Transmitting apparatus and interleaving method thereof

ABSTRACT

A transmitting apparatus is provided. The transmitting apparatus includes: an encoder configured to generate a low-density parity check (LDPC) codeword by LDPC encoding based on a parity check matrix; an interleaver configured to interleave the LDPC codeword; and a modulator configured to map the interleaved LDPC codeword onto a modulation symbol, wherein the modulator is further configured to map a bit included in a predetermined bit group from among a plurality of bit groups constituting the LDPC codeword onto a predetermined bit of the modulation symbol.

CROSS-REFERENCE TO RELATED PATENT APPLICATION

This application is a Continuation of U.S. application Ser. No.16/431,247 filed Jun. 4, 2019, which is a Continuation of U.S.application Ser. No. 14/715,908 filed May 19, 2015 which issued U.S.Pat. No. 10,447,428 on Oct. 15, 2019, the disclosure of which isincorporated herein in its entirety by reference.

BACKGROUND 1. Field

Apparatuses and methods consistent with exemplary embodiments relate toa transmitting apparatus and an interleaving method thereof, and moreparticularly, to a transmitting apparatus which processes and transmitsdata, and an interleaving method thereof.

2. Description of the Related Art

In the 21st century information-oriented society, broadcastingcommunication services are moving into the era of digitalization,multi-channel, wideband, and high quality. In particular, as highquality digital televisions, portable multimedia players and portablebroadcasting equipment are increasingly used in recent years, there isan increasing demand for methods for supporting various receivingmethods of digital broadcasting services.

In order to meet such demand, standard groups are establishing variousstandards and are providing a variety of services to satisfy users'needs. Therefore, there is a need for a method for providing improvedservices to users with high decoding and receiving performance.

SUMMARY

Exemplary embodiments of the inventive concept may overcome the abovedisadvantages and other disadvantages not described above. However, itis understood that the exemplary embodiment are not required to overcomethe disadvantages described above, and may not overcome any of theproblems described above.

The exemplary embodiments provide a transmitting apparatus which can mapa bit included in a predetermined bit group from among a plurality ofbit groups of a low density parity check (LDPC) codeword onto apredetermined bit of a modulation symbol, and transmit the bit, and aninterleaving method thereof.

According to an aspect of an exemplary embodiment, there is provided atransmitting apparatus including: an encoder configured to generate anLDPC codeword by LDPC encoding based on a parity check matrix; aninterleaver configured to interleave the LDPC codeword; and a modulatorconfigured to map the interleaved LDPC codeword onto a modulationsymbol, wherein the modulator is further configured to map a bitincluded in a predetermined bit group from among a plurality of bitgroups constituting the LDPC codeword onto a predetermined bit of themodulation symbol.

Each of the plurality of bit groups may be formed of M number of bits. Mmay be a common divisor of N_(ldpc) and K_(lpdc) and may be determinedto satisfy Q_(lpdc)=(N_(lpdc)−K_(lpdc))/M. In this case, Q_(lpdc) may bea cyclic shift parameter value regarding columns in a column group of aninformation word submatrix of the parity check matrix, N_(ldpc) may be alength of the LDPC codeword, and K_(ldpc) may be a length of informationword bits of the LDPC codeword.

The interleaver may include: a parity interleaver configured tointerleave parity bits of the LDPC codeword; a group interleaverconfigured to divide the parity-interleaved LDPC codeword by theplurality of bit groups and rearrange an order of the plurality of bitgroups in bit group wise; and a block interleaver configured tointerleave the plurality of bit groups the order of which is rearranged.

The group interleaver may be configured to rearrange the order of theplurality of bit groups in bit group wise by using the followingequation:Y _(j) =X _(π(j))(0≤j<N _(group))where X_(j) is a j^(th) bit group before the plurality of bit groups areinterleaved, Y_(j) is a j^(th) bit group after the plurality of bitgroups are interleaved, N_(group) is a total number of the plurality ofbit groups, and π(j) is a parameter indicating an interleaving order.

Here, π(j) may be determined based on at least one of a length of theLDPC codeword, a modulation method, and a code rate.

When the LDPC codeword has a length of 64800, the modulation method is64-QAM, and the code rate is 6/15, π(j) may be defined as in table 17.

The block interleaver may be configured to interleave by writing theplurality of bit groups in each of a plurality of columns in bit groupwise in a column direction, and reading each row of the plurality ofcolumns in which the plurality of bit groups are written in bit groupwise in a row direction.

The block interleaver may be configured to serially write, in theplurality of columns, at least some bit groups which are writable in theplurality of columns in bit group wise from among the plurality of bitgroups, and then divide and write the other bit groups in an area whichremains after the at least some bit groups are written in the pluralityof columns in bit group wise.

According to an aspect of another exemplary embodiment, there isprovided an interleaving method of a transmitting apparatus, including:generating an LDPC codeword by LDPC encoding based on a parity checkmatrix; interleaving the LDPC codeword; and mapping the interleaved LDPCcodeword onto a modulation symbol, wherein the mapping comprises mappinga bit included in a predetermined bit group from among a plurality ofbit groups constituting the LDPC codeword onto a predetermined bit ofthe modulation symbol.

Each of the plurality of bit groups may be formed of M number of bits,and M may be a common divisor of N_(ldpc) and K_(ldpc) and may bedetermined to satisfy Q_(ldpc)=(N_(ldpc)−K_(ldpc))/M. In this case,Q_(ldpc) may be a cyclic shift parameter value regarding columns in acolumn group of an information word submatrix of the parity checkmatrix, N_(ldpc) may be a length of the LDPC codeword, and K_(ldpc) maybe a length of information word bits of the LDPC codeword.

The interleaving may include: interleaving parity bits of the LDPCcodeword; dividing the parity-interleaved LDPC codeword by the pluralityof bit groups and rearranging an order of the plurality of bit groups inbit group wise; and interleaving the plurality of bit groups the orderof which is rearranged.

The rearranging in bit group wise may include rearranging the order ofthe plurality of bit groups in bit group wise by using the followingequation:Y _(j) =X _(π(j))(0≤j<N _(group)),where X_(j) is a j^(th) bit group before the plurality of bit groups areinterleaved, Y_(j) is a j^(th) bit group after the plurality of bitgroups are interleaved, N_(group) is a total number of the plurality ofbit groups, and π(j) is a parameter indicating an interleaving order.

Here, π(j) may be determined based on at least one of a length of theLDPC codeword, a modulation method, and a code rate.

When the LDPC codeword has a length of 64800, the modulation method is64-QAM, and the code rate is 6/15, π(j) may be defined as in table 17.

The interleaving the plurality of bit groups may include interleaving bywriting the plurality of bit groups in each of a plurality of columns inbit group wise in a column direction, and reading each row of theplurality of columns in which the plurality of bit groups are written inbit group wise in a row direction.

The interleaving the plurality of bit groups may include seriallywriting, in the plurality of columns, at least some bit groups which arewritable in the plurality of columns in bit group wise from among theplurality of bit groups, and then dividing and writing the other bitgroups in an area which remains after the at least some bit groups arewritten in the plurality of columns in bit group wise.

According to various exemplary embodiments, improved decoding andreceiving performance can be provided.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and/or other aspects will be more apparent by describing indetail exemplary embodiments, with reference to the accompanyingdrawings, in which:

FIGS. 1A to 12 are views to illustrate a transmitting apparatusaccording to exemplary embodiments;

FIGS. 13 to 18 are views to illustrate a receiving apparatus accordingto exemplary embodiments;

FIG. 19 is a block diagram to illustrate a configuration of atransmitting apparatus, according to an exemplary embodiment;

FIGS. 20 to 22 are views to illustrate a configuration of a parity checkmatrix, according to exemplary embodiments;

FIG. 23 is a block diagram to illustrate a configuration of aninterleaver, according to an exemplary embodiment;

FIGS. 24 to 26 are views to illustrate an interleaving method, accordingto exemplary embodiments;

FIGS. 27 to 32 are views to illustrate an interleaving method of a blockinterleaver, according to exemplary embodiments;

FIG. 33 is a view to illustrate an operation of a demultiplexer,according to an exemplary embodiment;

FIGS. 34 and 35 are views to illustrate a method for designing aninterleaving pattern, according to exemplary embodiments;

FIG. 36 is a block diagram to illustrate a configuration of a receivingapparatus according to an exemplary embodiment;

FIG. 37 is a block diagram to illustrate a configuration of adeinterleaver, according to an exemplary embodiment;

FIG. 38 is a view to illustrate a deinterleaving method of a blockdeinterleaver, according to an exemplary embodiment;

FIG. 39 is a flowchart to illustrate an interleaving method, accordingto an exemplary embodiment;

FIG. 40 is a block diagram illustrating a configuration of a receivingapparatus according to an exemplary embodiment;

FIG. 41 is a block diagram illustrating a demodulator according to anexemplary embodiment; and

FIG. 42 is a flowchart provided to illustrate an operation of areceiving apparatus from a moment when a user selects a service untilthe selected service is reproduced, according to an exemplaryembodiment.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

Hereinafter, various exemplary embodiments will be described in greaterdetail with reference to the accompanying drawings.

In the following description, same reference numerals are used for thesame elements when they are depicted in different drawings. The mattersdefined in the description, such as detailed construction and elements,are provided to assist in a comprehensive understanding of the exemplaryembodiments. Thus, it is apparent that the exemplary embodiments can becarried out without those specifically defined matters. Also, functionsor elements known in the related art are not described in detail sincethey would obscure the exemplary embodiments with unnecessary detail.

FIG. 1A is provided to explain transmitting apparatus according to anexemplary embodiment.

According to FIG. 1A, a transmitting apparatus 10000 according to anexemplary embodiment may include an Input Formatting Block (or part)11000, 11000-1, a BIT Interleaved and Coded Modulation (BICM) block12000, 12000-1, a Framing/Interleaving block 13000, 13000-1 and aWaveform Generation block 14000, 14000-1.

The transmitting apparatus 10000 according to an exemplary embodimentillustrated in FIG. 1A includes normative blocks shown by solid linesand informative blocks shown by dotted lines. Here, the blocks shown bysolid lines are normal blocks, and the blocks shown by dotted lines areblocks which may be used when implementing an informative MIMO.

The Input Formatting block 11000, 11000-1 generates a baseband frame(BBFRAME) from an input stream of data to be serviced. Herein, the inputstream may be a transport stream (TS), Internet protocol (IP) stream, ageneric stream (GS), a generic stream encapsulation (GSE), etc.

The BICM block 12000, 12000-1 determines a forward error correction(FEC) coding rate and a constellation order depending on a region wherethe data to be serviced will be transmitted (e.g., a fixed PHY frame ormobile PHY frame), and then, performs encoding. Signaling information onthe data to be serviced may be encoded through a separate BICM encoder(not illustrated) or encoded by sharing the BICM encoder 12000, 12000-1with the data to be serviced, depending on a system implementation.

The Framing/Interleaving block 13000, 13000-1 combines time interleaveddata with signaling information to generate a transmission frame.

The Waveform Generation block 14000, 14000-1 generates an OFDM signal inthe time domain on the generated transmission frame, modulates thegenerated OFDM signal to a radio frequency (RF) signal and transmits themodulated RF signal to a receiver.

FIGS. 1B and 1C are provided to explain methods of multiplexingaccording to an exemplary embodiment.

FIG. 1B illustrates a block diagram to implement a Time DivisionMultiplexing according to an exemplary embodiment.

In the TDM system architecture, there are four main blocks (or parts):the Input Formatting block 11000, the BICM block 12000, theFraming/Interleaving block 13000, and the Waveform Generation block14000.

Data is input and formatted in the Input Formatting block, and forwarderror correction applied and mapped to constellations in the BICM block12000. Interleaving, both time and frequency, and frame creation done inthe Framing/Interleaving block 13000. Subsequently, the output waveformis created in the Waveform Generation block 14000.

FIG. 2B illustrates a block diagram to implement a Layered DivisionMultiplexing (LDM) according to another exemplary embodiment.

In the LDM system architecture, there are several different blockscompared with the TDM system architecture. Specifically, there are twoseparate Input Formatting blocks 11000, 11000-1 and BICM blocks 12000,12000-1, one for each of the layers in LDM. These are combined beforethe Framing/Interleaving block 13000 in the LDM Injection block. TheWaveform Generation block 14000 is similar to TDM.

FIG. 2 is a block diagram which illustrates detailed configuration ofthe Input Formatting block illustrated in FIG. 1A.

As illustrated in FIG. 2, the Input Formatting block 11000 consists ofthree blocks which control packets distributed into PLPs. Specifically,the Input Formatting block 11000 includes a packet encapsulation andcompression block 11100, a baseband framing block 11200 and a schedulerblock 11300.

Input data packets input to the Input Formatting block 11000 can consistof various types, but at the encapsulation operation these differenttypes of packets become generic packets which configure baseband frames.Here, the format of generic packets is variable. It is possible toeasily extract the length of the generic packet from the packet itselfwithout additional information. The maximum length of the generic packetis 64 kB. The maximum length of the generic packet, including header, isfour bytes. Generic packets must be of integer byte length.

The scheduler 11200 receives an input stream of encapsulated genericpackets and forms them into physical layer pipes (PLPs), in the form ofbaseband frames. In the above-mentioned TDM system there may be only onePLP, called single PLP or S-PLP, or there may be multiple PLPs, calledM-PLP. One service cannot use more than four PLPs. In the case of an LDMsystem consisting of two layers, two PLPs are used, one for each layer.

The scheduler 11200 receives encapsulated input packet streams anddirects how these packets are allocated to physical layer resources.Specifically, the scheduler 11200 directs how the baseband framing blockwill output baseband frames.

The functional assets of the Scheduler 11200 are defined by data size(s)and time(s). The physical layer can deliver portions of data at thesediscrete times. The scheduler 11200 uses the inputs and informationincluding encapsulated data packets, quality of service metadata for theencapsulated data packets, a system buffer model, constraints andconfiguration from system management, and creates a conforming solutionin terms of configuration of the physical layer parameters. Thecorresponding solution is subject to the configuration and controlparameters and the aggregate spectrum available.

Meanwhile, the operation of the Scheduler 11200 is constrained bycombination of dynamic, quasi-static, and static configurations. Thedefinition of these constraints is left to implementation.

In addition, for each service a maximum of four PLPs shall be used.Multiple services consisting of multiple time interleaving blocks may beconstructed, up to a total maximum of 64 PLPs for bandwidths of 6, 7 or8 MHz. The baseband framing block 11300, as illustrated in FIG. 3A,consists of three blocks, baseband frame construction 3100, 3100-1, . .. 3100-n, baseband frame header construction block 3200, 3200-1, . . .3200-n, and the baseband frame scrambling block 3300, 3300-1, . . .3300-n. In a M-PLP operation, the baseband framing block createsmultiple PLPs as necessary.

A baseband frame 3500, as illustrated in FIG. 3B, consists of a basebandframe header 3500-1 and payload 3500-2 consisting of generic packets.Baseband frames have fixed length K_(payload). Generic packets 3610-3650shall be mapped to baseband frames 3500 in order. If generic packets3610-3650 do not completely fit within a baseband frame, packets aresplit between the current baseband frame and the next baseband frame.Packet splits shall be in byte units only.

The baseband frame header construction block 3200, 3200-1, . . . 3200-nconfigures the baseband frame header. The baseband frame header 3500-1,as illustrated in FIG. 3B, is composed of three parts, including thebase header 3710, the optional header (or option field 3720) and theextension field 3730. Here, the base header 3710 appears in everybaseband frame, and the optional header 3720 and the extension field3730 may not be present in every time.

The main feature of the base header 3710 is to provide a pointerincluding an offset value in bytes as an initiation of the next genericpacket within the baseband frame. When the generic packet initiates thebaseband frame, the pointer value becomes zero. If there is no genericpacket which is initiated within the baseband frame, the pointer valueis 8191, and a 2-byte base header may be used.

The extension field (or extension header) 3730 may be used later, forexample, for the baseband frame packet counter, baseband frame timestamping, and additional signaling, etc.

The baseband frame scrambling block 3300, 3300-1, . . . 3300-n scramblesthe baseband frame.

In order to ensure that the payload data when mapped to constellationsdoes not always map to the same point, such as when the payload mappedto constellations consists of a repetitive sequence, the payload datashall always be scrambled before forward error correction encoding.

The scrambling sequences shall be generated by a 16-bit shift registerthat has 9 feedback taps. Eight of the shift register outputs areselected as a fixed randomizing byte, where each bit from t his byte isused to individually XOR the corresponding input data. The data bits areXORed MSB to MSB and so on until LSB to LSB. The generator polynomial isG(x)=1+X+X³+X⁶+X⁷+X¹¹+X¹²+X¹³+X¹⁶.

FIG. 4 illustrates a shift register of a PRBS encoder for scrambling abaseband according to an exemplary embodiment, wherein loading of thesequence into the PRBS register, as illustrated in FIG. 4 and shall beinitiated at the start of every baseband frame.

FIG. 5 is a block diagram provided to explain detailed configuration ofthe BICM block illustrated in FIG. 1A.

As illustrated in FIG. 5, the BICM block includes the FEC block 14100,14100-1, . . . , 14100-n, Bit Interleaver block 14200, 14200-1, . . . ,14200-n and Mapper blocks 14300, 14300-1, . . . , 14300-n.

The input to the FEC block 1400, 14100-1, . . . , 14100-n is a Basebandframe, of length K_(payload), and the output from the FEC block is a FECframe. The FEC block 14100, 14100-1, . . . , 14100-n is implemented byconcatenation of an outer code and an innter code with the informationpart. The FEC frame has length N_(inner). There are two differentlengths of LDPC code defined: N_(inner)=64800 bits and N_(inner)=16200bits

The outer code is realized as one of either Bose, Ray-Chaudhuri andHocquenghem (BCH) outer code, a Cyclic Redundancy Check (CRC) or othercode. The inner code is realized as a Low Density Parity Check (LDPC)code. Both BCH and LDPC FEC codes are systematic codes where theinformation part I contained within the codeword. The resulting codewordis thus a concatenation of information or payload part, BCH or CRCparities and LDPC parities, as shown in FIG. 6A.

The use of LDPC code is mandatory and is used to provide the redundancyneeded for the code detection. There are two different LDPC structuresthat are defined, these are called Type A and Type B. Type A has a codestructure that shows better performance at low code rates while Type Bcode structure shows better performance at high code rates. In generalN_(inner)64800 bit codes are expected to be employed. However, forapplications where latency is critical, or a simpler encoder/decoderstructure is preferred, N_(inner)=16200 bit codes may also be used.

The outer code and CRC consist of adding M_(outer) bits to the inputbaseband frame. The outer BCH code is used to lower the inherent LDPCerror floor by correcting a predefined number of bit errors. When usingBCH codes the length of M_(outer) is 192 bits (N_(inner)=64800 bitcodes) and 168 bits (for N_(inner)16200 bit codes). When using CRC thelength of M_(outer) is 32 bits. When neither BCH nor CRC are used thelength of M_(outer) is zero. The outer code may be omitted if it isdetermined that the error correcting capability of the inner code issufficient for the application. When there is no outer code thestructure of the FEC frame is as shown in FIG. 6B.

FIG. 7 is a block diagram provided to explain detailed configuration ofthe Bit Interleaver block illustrated in FIG. 6.

The LDPC codeword of the LDPC encoder, i.e., a FEC Frame, shall be bitinterleaved by a Bit Interleaver block 14200. The Bit Interleaver block14200 includes a parity interleaver 14210, a group-wise interleaver14220 and a block interleaver 14230. Here, the parity interleaver is notused for Type A and is only used for Type B codes.

The parity interleaver 14210 converts the staircase structure of theparity-part of the LDPC parity-check matrix into a quasi-cyclicstructure similar to the information-part of the matrix.

Meanwhile, the parity interleaved LDPC coded bits are split intoN_(group)=N_(inner)/360 bit groups, and the group-wise interleaver 14220rearranges the bit groups.

The block interleaver 14230 block interleaves the group-wise interleavedLDPC codeword.

Specifically, the block interleaver 14230 divides a plurality of columnsinto part 1 and part 2 based on the number of columns of the blockinterleaver 14230 and the number of bits of the bit groups. In addition,the block interleaver 14230 writes the bits into each column configuringpart 1 column wise, and subsequently writes the bits into each columnconfiguring part 2 column wise, and then reads out row wise the bitswritten in each column.

In this case, the bits constituting the bit groups in the part 1 may bewritten into the same column, and the bits constituting the bit groupsin the part 2 may be written into at least two columns.

Back to FIG. 5, the Mapper block 14300, 14300-1, . . . , 14300-n mapsFEC encoded and bit interleaved bits to complex valued quadratureamplitude modulation (QAM) constellation points. For the highestrobustness level, quaternary phase shift keying (QPSK) is used. Forhigher order constellations (16-QAM up to 4096-QAM), non-uniformconstellations are defined and the constellations are customized foreach code rate.

Each FEC frame shall be mapped to a FEC block by first de-multiplexingthe input bits into parallel data cell words and then mapping these cellwords into constellation values.

FIG. 8 is a block diagram provided to explain detailed configuration ofa Framing/Interleaving block illustrated in FIG. 1A.

As illustrated in FIG. 8, the Framing/Interleaving block 14300 includesa time interleaving block 14310, a framing block 14320 and a frequencyinterleaving block 14330.

The input to the time interleaving block 14310 and the framing block14320 may consist of M-PLPs however the output of the framing block14320 is OFDM symbols, which are arranged in frames. The frequencyinterleaver included in the frequency interleaving block 14330 operatesan OFDM symbols.

The time interleaver (TI) configuration included in the timeinterleaving block 14310 depends on the number of PLPs used. When thereis only a single PLP or when LDM is used, a sheer convolutionalinterleaver is used, while for multiple PLP a hybrid interleaverconsisting of a cell interleaver, a block interleaver and aconvolutional interleaver is used. The input to the time interleavingblock 14310 is a stream of cells output from the mapper block (FIG. 5,14300, 14300-1, . . . , 14300-n), and the output of the timeinterleaving block 14310 is also a stream of time-interleaved cells.

FIG. 9A illustrates the time interleaving block for a single PLP(S-PLP), and it consists of a convolutional interleaver only.

FIG. 9B illustrates the time interleaving block for a plurality of PLPs(M-PLP), and it can be divided in several sub-blocks as illustrated.

The framing block 14320 maps the interleaved frames onto at least onetransmitter frame. The framing block 14320, specifically, receivesinputs (e.g. data cell) from at least one physical layer pipes andoutputs symbols.

In addition, the framing block 14320 creates at least one special symbolknown as preamble symbols. These symbols undergo the same processing inthe waveform block mentioned later.

FIG. 10 is a view illustrating an example of a transmission frameaccording to an exemplary embodiment.

As illustrated in FIG. 10, the transmission frame consists of threeparts, the bootstrap, preamble and data payload. Each of the three partsconsists of at least one symbol.

Meanwhile, the purpose of the frequency interleaving block 14330 is toensure that sustained interference in one part of the spectrum will notdegrade the performance of a particular PLP disproportionately comparedto other PLPs. The frequency interleaver 14330, operating on the all thedata cells of one OFDM symbol, maps the data cells from the framiningblock 14320 onto the N data carriers.

FIG. 11 is a block diagram provided to explain detailed configuration ofa Waveform Generation block illustrated in FIG. 1A.

As illustrated in FIG. 11, the Waveform Generation block 14000 includesa pilot inserting block 14100, a MISO block 14200, an IFFT block 14300,a PAPR block 14400, a GI inserting block 14500 and a bootstrap block14600.

The pilot inserting block 14100 inserts a pilot to various cells withinthe OFDM frame.

Various cells within the OFDM frame are modulated with referenceinformation whose transmitted value is known to the receiver.

Cells containing the reference information are transmitted at a boostedpower level. The cells are called scattered, continual, edge, preambleor frame-closing pilot cells. The value of the pilot information isderived from a reference sequence, which is a series of values, one foreach transmitted carrier on any given symbol.

The pilots can be used for frame synchronization, frequencysynchronization, time synchronization, channel estimation, transmissionmode identification and can also be used to follow the phase noise.

The pilots are modulated according to reference information, and thereference sequence is applied to all the pilots (e.g. scattered,continual edge, preamble and frame closing pilots) in every symbolincluding preamble and the frame-closing symbol of the frame.

The reference information, taken from the reference sequence, istransmitted in scattered pilot cells in every symbol except the preambleand the frame-closing symbol of the frame.

In addition to the scattered pilots described above, a number ofcontinual pilots are inserted in every symbol of the frame except forPreamble and the frame-closing symbol. The number and location ofcontinual pilots depends on both the FFT size and scattered pilotpattern in use.

The MISO block 14200 applies a MISO processing.

The Transmit Diversity Code Filter Set is a MISO pre-distortiontechnique that artificially decorrelates signals from multipletransmitters in a Single Frequency Network in order to minimizepotential destructive interference. Linear frequency domain filters areused so that the compensation in the receiver can be implemented as partof the equalizer process. The filter design is based on creatingall-pass filters with minimized cross-correlation over all filter pairsunder the constraints of the number of transmitters M∈{2,3,4} and thetime domain span of the filters N∈{64,256}. The longer time domain spanfilters will increase the decorrelation level, but the effective guardinterval length will be decreased by the filter time domain span andthis should be taken into consideration when choosing a filter set for aparticular network topology.

The IFFT block 14300 specifies the OFDM structure to use for eachtransmission mode. The transmitted signal is organized in frames. Eachframe has a duration of T_(F), and consists of L_(F) OFDM symbols. Nframes constitute one super-frame. Each symbol is constituted by a setof K_(total) carriers transmitted with a duration T_(S). Each symbol iscomposed of a useful part with duration T_(U) and a guard interval witha duration Δ. The guard interval consists of a cyclic continuation ofthe useful part, T_(U), and is inserted before it.

The PAPR block 14400 applies the Peak to Average Power Reductiontechnique.

The GI inserting block 14500 inserts the guard interval into each frame.

The bootstrap block 14600 prefixes the bootstrap signal to the front ofeach frame.

FIG. 12 is a block diagram provided to explain a configuration ofsignaling information according to an exemplary embodiment.

The input processing block 11000 includes a scheduler 11200. The BICMblock 15000 includes an L1 signaling generator 15100, an FEC encoder15200-1 and 15200-2, a bit interleaver 15300-2, a demux 15400-2,constellation mappers 15500-1 and 15500-2. The L1 signaling generator15100 may be included in the input processing block 11000, according toan exemplary embodiment.

An n number of service data are mapped to a PLP0 to a PLPn respectively.The scheduler 11200 determines a position, modulation and coding ratefor each PLP in order to map a plurality of PLPs to a physical layer ofT2. In other words, the scheduler 11200 generates L1 signalinginformation. The scheduler 11200 may output dynamic field informationamong L1 post signaling information of a current frame, using theraming/Interleavingblock 13000 (FIG. 1) which may be referred to as aframe builder. Further, the scheduler 11200 may transmit the L1signaling information to the BICM block 15000. The L1 signalinginformation includes L1 pre signaling information and L1 post signalinginformation.

The L1 signaling generator 15100 may differentiate the L1 pre signalinginformation from the L1 post signaling information to output them. TheFEC encoders 15200-1 and 15200-2 perform respective encoding operationswhich include shortening and puncturing for the L1 pre signalinginformation and the L1 post signaling information. The bit interleaver15300-2 performs interleaving by bit for the encoded L1 post signalinginformation. The demux 15400-2 controls robustness of bits by modifyingan order of bits constituting cells and outputs the cells which includebits. Two constellation mappers 15500-1 and 15500-2 map the L1 presignaling information and the L1 post signaling information toconstellations, respectively. The L1 pre signaling information and theL1 post signaling information processed through the above describedprocesses are output to be included in each frame by theFraming/Interleaving block 13000 (FIG. 1).

FIG. 13 illustrates a structure of an receiving apparatus according toan embodiment of the present invention.

The apparatus 20000 for receiving broadcast signals according to anembodiment of the present invention can correspond to the apparatus10000 for transmitting broadcast signals, described with reference toFIG. 1. The apparatus 20000 for receiving broadcast signals according toan embodiment of the present invention can include a synchronization &demodulation module 21000, a frame parsing module 22000, a demapping &decoding module 23000, an output processor 24000 and a signalingdecoding module 25000. A description will be given of operation of eachmodule of the apparatus 20000 for receiving broadcast signals.

The synchronization & demodulation module 21000 can receive inputsignals through m Rx antennas, perform signal detection andsynchronization with respect to a system corresponding to the apparatus20000 for receiving broadcast signals and carry out demodulationcorresponding to a reverse procedure of the procedure performed by theapparatus 10000 for transmitting broadcast signals.

The frame parsing module 22000 can parse input signal frames and extractdata through which a service selected by a user is transmitted. If theapparatus 10000 for transmitting broadcast signals performsinterleaving, the frame parsing module 22000 can carry outdeinterleaving corresponding to a reverse procedure of interleaving. Inthis case, the positions of a signal and data that need to be extractedcan be obtained by decoding data output from the signaling decodingmodule 25200 to restore scheduling information generated by theapparatus 10000 for transmitting broadcast signals.

The demapping & decoding module 23000 can convert the input signals intobit domain data and then deinterleave the same as necessary. Thedemapping & decoding module 23000 can perform demapping for mappingapplied for transmission efficiency and correct an error generated on atransmission channel through decoding. In this case, the demapping &decoding module 23000 can obtain transmission parameters necessary fordemapping and decoding by decoding the data output from the signalingdecoding module 25000.

The output processor 24000 can perform reverse procedures of variouscompression/signal processing procedures which are applied by theapparatus 10000 for transmitting broadcast signals to improvetransmission efficiency. In this case, the output processor 24000 canacquire necessary control information from data output from thesignaling decoding module 25000. The output of the output processor24000 corresponds to a signal input to the apparatus 10000 fortransmitting broadcast signals and may be MPEG-TSs, IP streams (v4 orv6) and generic streams.

The signaling decoding module 25000 can obtain PLS information from thesignal demodulated by the synchronization & demodulation module 21000.As described above, the frame parsing module 22000, demapping & decodingmodule 23000 and output processor 24000 can execute functions thereofusing the data output from the signaling decoding module 25000.

FIG. 14 illustrates a synchronization & demodulation module according toan embodiment of the present invention.

As shown in FIG. 14, the synchronization & demodulation module 21000according to an embodiment of the present invention corresponds to asynchronization & demodulation module of an apparatus 20000 forreceiving broadcast signals using m Rx antennas and can include mprocessing blocks for demodulating signals respectively input through mpaths. The m processing blocks can perform the same processingprocedure. A description will be given of operation of the firstprocessing block 21000 from among the m processing blocks.

The first processing block 21000 can include a tuner 21100, an ADC block21200, a preamble detector 21300, a guard sequence detector 21400, awaveform transform block 21500, a time/frequency synchronization block21600, a reference signal detector 21700, a channel equalizer 21800 andan inverse waveform transform block 21900.

The tuner 21100 can select a desired frequency band, compensate for themagnitude of a received signal and output the compensated signal to theADC block 21200.

The ADC block 21200 can convert the signal output from the tuner 21100into a digital signal.

The preamble detector 21300 can detect a preamble (or preamble signal orpreamble symbol) in order to check whether or not the digital signal isa signal of the system corresponding to the apparatus 20000 forreceiving broadcast signals. In this case, the preamble detector 21300can decode basic transmission parameters received through the preamble.

The guard sequence detector 21400 can detect a guard sequence in thedigital signal. The time/frequency synchronization block 21600 canperform time/frequency synchronization using the detected guard sequenceand the channel equalizer 21800 can estimate a channel through areceived/restored sequence using the detected guard sequence.

The waveform transform block 21500 can perform a reverse operation ofinverse waveform transform when the apparatus 10000 for transmittingbroadcast signals has performed inverse waveform transform. When thebroadcast transmission/reception system according to one embodiment ofthe present invention is a multi-carrier system, the waveform transformblock 21500 can perform FFT. Furthermore, when the broadcasttransmission/reception system according to an embodiment of the presentinvention is a single carrier system, the waveform transform block 21500may not be used if a received time domain signal is processed in thefrequency domain or processed in the time domain.

The time/frequency synchronization block 21600 can receive output dataof the preamble detector 21300, guard sequence detector 21400 andreference signal detector 21700 and perform time synchronization andcarrier frequency synchronization including guard sequence detection andblock window positioning on a detected signal. Here, the time/frequencysynchronization block 21600 can feed back the output signal of thewaveform transform block 21500 for frequency synchronization.

The reference signal detector 21700 can detect a received referencesignal. Accordingly, the apparatus 20000 for receiving broadcast signalsaccording to an embodiment of the present invention can performsynchronization or channel estimation.

The channel equalizer 21800 can estimate a transmission channel fromeach Tx antenna to each Rx antenna from the guard sequence or referencesignal and perform channel equalization for received data using theestimated channel.

The inverse waveform transform block 21900 may restore the originalreceived data domain when the waveform transform block 21500 performswaveform transform for efficient synchronization and channelestimation/equalization. If the broadcast transmission/reception systemaccording to an embodiment of the present invention is a single carriersystem, the waveform transform block 21500 can perform FFT in order tocarry out synchronization/channel estimation/equalization in thefrequency domain and the inverse waveform transform block 21900 canperform IFFT on the channel-equalized signal to restore transmitted datasymbols. If the broadcast transmission/reception system according to anembodiment of the present invention is a multi-carrier system, theinverse waveform transform block 21900 may not be used.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

FIG. 15 illustrates a frame parsing module according to an embodiment ofthe present invention.

As shown in FIG. 15, the frame parsing module 22000 according to anembodiment of the present invention can include at least one blockinterleaver 22100 and at least one cell demapper 22200.

The block interleaver 22100 can deinterleave data input through datapaths of the m Rx antennas and processed by the synchronization &demodulation module 21000 on a signal block basis. In this case, if theapparatus 10000 for transmitting broadcast signals performs pair-wiseinterleaving, the block interleaver 22100 can process two consecutivepieces of data as a pair for each input path. Accordingly, the blockinterleaver 22100 can output two consecutive pieces of data even whendeinterleaving has been performed. Furthermore, the block interleaver22100 can perform a reverse operation of the interleaving operationperformed by the apparatus 10000 for transmitting broadcast signals tooutput data in the original order.

The cell demapper 22200 can extract cells corresponding to common data,cells corresponding to data pipes and cells corresponding to PLS datafrom received signal frames. The cell demapper 22200 can merge datadistributed and transmitted and output the same as a stream asnecessary. When two consecutive pieces of cell input data are processedas a pair and mapped in the apparatus 10000 for transmitting broadcastsignals, the cell demapper 22200 can perform pair-wise cell demappingfor processing two consecutive input cells as one unit as a reverseprocedure of the mapping operation of the apparatus 10000 fortransmitting broadcast signals.

In addition, the cell demapper 22200 can extract PLS signaling datareceived through the current frame as PLS-pre & PLS-post data and outputthe PLS-pre & PLS-post data.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

FIG. 16 illustrates a demapping & decoding module according to anembodiment of the present invention.

The demapping & decoding module 23000 shown in FIG. 16 can perform areverse operation of the operation of the bit interleaved and coded &modulation module illustrated in FIG. 1.

The bit interleaved and coded & modulation module of the apparatus 10000for transmitting broadcast signals according to an embodiment of thepresent invention can process input data pipes by independently applyingSISO, MISO and MIMO thereto for respective paths, as described above.Accordingly, the demapping & decoding module 23000 illustrated in FIG.16 can include blocks for processing data output from the frame parsingmodule according to SISO, MISO and MIMO in response to the apparatus10000 for transmitting broadcast signals.

As shown in FIG. 16, the demapping & decoding module 23000 according toan embodiment of the present invention can include a first block 23100for SISO, a second block 23200 for MISO, a third block 23300 for MIMOand a fourth block 23400 for processing the PLS-pre/PLS-postinformation. The demapping & decoding module 23000 shown in FIG. 16 isexemplary and may include only the first block 23100 and the fourthblock 23400, only the second block 23200 and the fourth block 23400 oronly the third block 23300 and the fourth block 23400 according todesign. That is, the demapping & decoding module 23000 can includeblocks for processing data pipes equally or differently according todesign.

A description will be given of each block of the demapping & decodingmodule 23000.

The first block 23100 processes an input data pipe according to SISO andcan include a time deinterleaver block 23110, a cell deinterleaver block23120, a constellation demapper block 23130, a cell-to-bit mux block23140, a bit deinterleaver block 23150 and an FEC decoder block 23160.

The time deinterleaver block 23110 can perform a reverse process of theprocess performed by the time interleaving block 14310 illustrated inFIG. 8. That is, the time deinterleaver block 23110 can deinterleaveinput symbols interleaved in the time domain into original positionsthereof.

The cell deinterleaver block 23120 can perform a reverse process of theprocess performed by the cell interleaver block illustrated in FIG. 9a .That is, the cell deinterleaver block 23120 can deinterleave positionsof cells spread in one FEC block into original positions thereof. Thecell deinterleaver block 23120 may be omitted.

The constellation demapper block 23130 can perform a reverse process ofthe process performed by the mapper 12300 illustrated in FIG. 5. Thatis, the constellation demapper block 23130 can demap a symbol domaininput signal to bit domain data. In addition, the constellation demapperblock 23130 may perform hard decision and output decided bit data.Furthermore, the constellation demapper block 23130 may output alog-likelihood ratio (LLR) of each bit, which corresponds to a softdecision value or probability value. If the apparatus 10000 fortransmitting broadcast signals applies a rotated constellation in orderto obtain additional diversity gain, the constellation demapper block23130 can perform 2-dimensional LLR demapping corresponding to therotated constellation. Here, the constellation demapper block 23130 cancalculate the LLR such that a delay applied by the apparatus 10000 fortransmitting broadcast signals to the I or Q component can becompensated.

The cell-to-bit mux block 23140 can perform a reverse process of theprocess performed by the mapper 12300 illustrated in FIG. 5. That is,the cell-to-bit mux block 23140 can restore bit data mapped to theoriginal bit streams.

The bit deinterleaver block 23150 can perform a reverse process of theprocess performed by the bit interleaver 12200 illustrated in FIG. 5.That is, the bit deinterleaver block 23150 can deinterleave the bitstreams output from the cell-to-bit mux block 23140 in the originalorder.

The FEC decoder block 23460 can perform a reverse process of the processperformed by the FEC encoder 12100 illustrated in FIG. 5. That is, theFEC decoder block 23460 can correct an error generated on a transmissionchannel by performing LDPC decoding and BCH decoding.

The second block 23200 processes an input data pipe according to MISOand can include the time deinterleaver block, cell deinterleaver block,constellation demapper block, cell-to-bit mux block, bit deinterleaverblock and FEC decoder block in the same manner as the first block 23100,as shown in FIG. 16. However, the second block 23200 is distinguishedfrom the first block 23100 in that the second block 23200 furtherincludes a MISO decoding block 23210. The second block 23200 performsthe same procedure including time deinterleaving operation to outputtingoperation as the first block 23100 and thus description of thecorresponding blocks is omitted.

The MISO decoding block 11110 can perform a reverse operation of theoperation of the MISO processing in the apparatus 10000 for transmittingbroadcast signals. If the broadcast transmission/reception systemaccording to an embodiment of the present invention uses STBC, the MISOdecoding block 11110 can perform Alamouti decoding.

The third block 23300 processes an input data pipe according to MIMO andcan include the time deinterleaver block, cell deinterleaver block,constellation demapper block, cell-to-bit mux block, bit deinterleaverblock and FEC decoder block in the same manner as the second block23200, as shown in FIG. 16. However, the third block 23300 isdistinguished from the second block 23200 in that the third block 23300further includes a MIMO decoding block 23310. The basic roles of thetime deinterleaver block, cell deinterleaver block, constellationdemapper block, cell-to-bit mux block and bit deinterleaver blockincluded in the third block 23300 are identical to those of thecorresponding blocks included in the first and second blocks 23100 and23200 although functions thereof may be different from the first andsecond blocks 23100 and 23200.

The MIMO decoding block 23310 can receive output data of the celldeinterleaver for input signals of the m Rx antennas and perform MIMOdecoding as a reverse operation of the operation of the MIMO processingin the apparatus 10000 for transmitting broadcast signals. The MIMOdecoding block 23310 can perform maximum likelihood decoding to obtainoptimal decoding performance or carry out sphere decoding with reducedcomplexity. Otherwise, the MIMO decoding block 23310 can achieveimproved decoding performance by performing MMSE detection or carryingout iterative decoding with MMSE detection.

The fourth block 23400 processes the PLS-pre/PLS-post information andcan perform SISO or MISO decoding.

The basic roles of the time deinterleaver block, cell deinterleaverblock, constellation demapper block, cell-to-bit mux block and bitdeinterleaver block included in the fourth block 23400 are identical tothose of the corresponding blocks of the first, second and third blocks23100, 23200 and 23300 although functions thereof may be different fromthe first, second and third blocks 23100, 23200 and 23300.

The shortened/punctured FEC decoder 23410 can perform de-shortening andde-puncturing on data shortened/punctured according to PLS data lengthand then carry out FEC decoding thereon. In this case, the FEC decoderused for data pipes can also be used for PLS. Accordingly, additionalFEC decoder hardware for the PLS only is not needed and thus systemdesign is simplified and efficient coding is achieved.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

The demapping & decoding module according to an embodiment of thepresent invention can output data pipes and PLS information processedfor the respective paths to the output processor, as illustrated in FIG.16.

FIGS. 17 and 18 illustrate output processors according to embodiments ofthe present invention.

FIG. 17 illustrates an output processor 24000 according to an embodimentof the present invention. The output processor 24000 illustrated in FIG.17 receives a single data pipe output from the demapping & decodingmodule and outputs a single output stream.

The output processor 24000 shown in FIG. 17 can include a BB scramblerblock 24100, a padding removal block 24200, a CRC-8 decoder block 24300and a BB frame processor block 24400.

The BB scrambler block 24100 can descramble an input bit stream bygenerating the same PRBS as that used in the apparatus for transmittingbroadcast signals for the input bit stream and carrying out an XORoperation on the PRBS and the bit stream.

The padding removal block 24200 can remove padding bits inserted by theapparatus for transmitting broadcast signals as necessary.

The CRC-8 decoder block 24300 can check a block error by performing CRCdecoding on the bit stream received from the padding removal block24200.

The BB frame processor block 24400 can decode information transmittedthrough a BB frame header and restore MPEG-TSs, IP streams (v4 or v6) orgeneric streams using the decoded information.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

FIG. 18 illustrates an output processor according to another embodimentof the present invention. The output processor 24000 shown in FIG. 18receives multiple data pipes output from the demapping & decodingmodule. Decoding multiple data pipes can include a process of mergingcommon data commonly applicable to a plurality of data pipes and datapipes related thereto and decoding the same or a process ofsimultaneously decoding a plurality of services or service components(including a scalable video service) by the apparatus for receivingbroadcast signals.

The output processor 24000 shown in FIG. 18 can include a BB descramblerblock, a padding removal block, a CRC-8 decoder block and a BB frameprocessor block as the output processor illustrated in FIG. 17. Thebasic roles of these blocks correspond to those of the blocks describedwith reference to FIG. 17 although operations thereof may differ fromthose of the blocks illustrated in FIG. 17.

A de-jitter buffer block 24500 included in the output processor shown inFIG. 18 can compensate for a delay, inserted by the apparatus fortransmitting broadcast signals for synchronization of multiple datapipes, according to a restored TTO (time to output) parameter.

A null packet insertion block 24600 can restore a null packet removedfrom a stream with reference to a restored DNP (deleted null packet) andoutput common data.

A TS clock regeneration block 24700 can restore time synchronization ofoutput packets based on ISCR (input stream time reference) information.

A TS recombining block 24800 can recombine the common data and datapipes related thereto, output from the null packet insertion block24600, to restore the original MPEG-TSs, IP streams (v4 or v6) orgeneric streams. The TTO, DNT and ISCR information can be obtainedthrough the BB frame header.

An in-band signaling decoding block 24900 can decode and output in-bandphysical layer signaling information transmitted through a padding bitfield in each FEC frame of a data pipe.

The output processor shown in FIG. 18 can BB-descramble the PLS-preinformation and PLS-post information respectively input through aPLS-pre path and a PLS-post path and decode the descrambled data torestore the original PLS data. The restored PLS data is delivered to asystem controller included in the apparatus for receiving broadcastsignals. The system controller can provide parameters necessary for thesynchronization & demodulation module, frame parsing module, demapping &decoding module and output processor module of the apparatus forreceiving broadcast signals.

The above-described blocks may be omitted or replaced by blocks havingsimilar r identical functions according to design.

FIG. 19 is a block diagram to illustrate a configuration of atransmitting apparatus according to an exemplary embodiment. Referringto FIG. 19, the transmitting apparatus 100 includes an encoder 110, aninterleaver 120, and a modulator 130 (or a constellation mapper).

The encoder 110 generates a low density parity check (LDPC) codeword byperforming LDPC encoding based on a parity check matrix. To achievethis, the encoder 110 may include an LDPC encoder (not shown) to performthe LDPC encoding.

Specifically, the encoder 110 LDPC-encodes information word (orinformation) bits to generate the LDPC codeword which is formed ofinformation word bits and parity bits (that is, LDPC parity bits). Here,bits input to the encoder 110 may be used as the information word bits.Also, since an LDPC code is a systematic code, the information word bitsmay be included in the LDPC codeword as they are.

The LDPC codeword is formed of the information word bits and the paritybits. For example, the LDPC codeword is formed of N_(ldpc) number ofbits, and includes K_(lpdc) number of information word bits andN_(parity)=N_(lpdc)−K_(ldpc) number of parity bits.

In this case, the encoder 110 may generate the LDPC codeword byperforming the LDPC encoding based on the parity check matrix. That is,since the LDPC encoding is a process for generating an LDPC codeword tosatisfy H·C^(T)=0, the encoder 110 may use the parity check matrix whenperforming the LDPC encoding. Herein, H is a parity check matrix and Cis an LDPC codeword.

For the LDPC encoding, the transmitting apparatus 100 may include amemory and may pre-store parity check matrices of various formats.

For example, the transmitting apparatus 100 may pre-store parity checkmatrices which are defined in Digital Video Broadcasting-Cable version 2(DVB-C2), Digital Video Broadcasting-Satellite-Second Generation(DVB-S2), Digital Video Broadcasting-Second Generation Terrestrial(DVB-T2), etc., or may pre-store parity check matrices which are definedin the North America digital broadcasting standard system AdvancedTelevision System Committee (ATSC) 3.0 standards, which are currentlybeing established. However, this is merely an example and thetransmitting apparatus 100 may pre-store parity check matrices of otherformats in addition to these parity check matrices.

Hereinafter, a parity check matrix according to various exemplaryembodiments will be explained in detail with reference to the drawings.In the parity check matrix, elements other than elements having 1 have0.

For example, the parity check matrix according to an exemplaryembodiment may have a configuration of FIG. 20.

Referring to FIG. 20, a parity check matrix 200 is formed of aninformation word submatrix (or an information submatrix) 210corresponding to information word bits, and a parity submatrix 220corresponding to parity bits.

The information word submatrix 210 includes K_(ldpc) number of columnsand the parity submatrix 220 includes N_(parity)=N_(ldpc)−K_(ldpc)number of columns. The number of rows of the parity check matrix 200 isidentical to the number of columns of the parity submatrix 220,N_(parity)=N_(ldpc)−K_(ldpc).

In addition, in the parity check matrix 200, N_(ldpc) is a length of anLDPC codeword, K_(ldpc) is a length of information word bits, andN_(parity)=N_(ldpc)−K_(ldpc) is a length of parity bits. The length ofthe LDPC codeword, the information word bits, and the parity bits meanthe number of bits included in each of the LDPC codeword, theinformation word bits, and the parity bits.

Hereinafter, the configuration of the information word submatrix 210 andthe parity submatrix 220 will be explained in detail.

The information word submatrix 210 includes K_(ldpc) number of columns(that is, 0^(th) column to (K_(ldpc)−1)^(th) column), and follows thefollowing rules:

First, M number of columns from among K_(ldpc) number of columns of theinformation word submatrix 210 belong to the same group, and K_(ldpc)number of columns is divided into K_(ldpc)/M number of column groups. Ineach column group, a column is cyclic-shifted from an immediatelyprevious column by Q_(ldpc). That is, Q_(ldpc) may be a cyclic shiftparameter value regarding columns in a column group of the informationword submatrix 210 of the parity check matrix 200.

Herein, M is an interval at which a pattern of a column group, whichincludes a plurality of columns, is repeated in the information wordsubmatrix 210 (e.g., M=360), and Q_(ldpc) is a size by which one columnis cyclic-shifted from an immediately previous column in a same columngroup in the information word submatrix 210. Also, M is a common divisorof N_(ldpc) and K_(ldpc) and is determined to satisfyQ_(ldpc)=(N_(ldpc)−K_(ldpc))/M. Here, M and Q_(ldpc) are integers andK_(ldpc)/M is also an integer. M and Q_(ldpc) may have various valuesaccording to a length of the LDPC codeword and a code rate (CR)(or,coding rate).

For example, when M=360 and the length of the LDPC codeword, N_(ldpc),is 64800, Q_(ldpc) may be defined as in table 1 presented below, and,when M=360 and the length N_(ldpc) of the LDPC codeword is 16200,Q_(ldpc) may be defined as in table 2 presented below.

TABLE 1 Code Rate N_(ldpc) M Q_(ldpc) 5/15  64800 360 120 6/15 64800 360108 7/15 64800 360 96 8/15 64800 360 84 9/15 64800 360 72 10/15  64800360 60 11/15  64800 360 48 12/15  64800 360 36 13/15  64800 360 24

TABLE 2 Code Rate N_(ldpc) M Q_(ldpc) 5/15 16200 360 30 6/15 16200 36027 7/15 16200 360 24 8/15 16200 360 21 9/15 16200 360 18 10/15  16200360 15 11/15  16200 360 12 12/15  16200 360 9 13/15  16200 360 6

Second, when the degree of the 0^(th) column of the i^(th) column group(i=0, 1, . . . , K_(ldpc)/M−1) is D_(i) (herein, the degree is thenumber of value 1 existing in each column and all columns belonging tothe same column group have the same degree), and a position (or anindex) of each row where 1 exists in the 0^(th) column of the i^(th)column group is R_(i,0) ⁽⁰⁾, R_(i,0) ⁽¹⁾, . . . , R_(i,0) ^((D) ^(i)⁻¹⁾, an index R_(i,j) ^((k)) of a row where k^(th) 1 is located in thej^(th) column in the i^(th) column group is determined by followingEquation 1:R _(i,j) ^((k)) =R _(i,(j-1)) ^((k)) +Q _(ldpc) mod(N _(ldpc) −K_(ldpc))  (1),where k=0, 1, 2, . . . D_(i)−1; i=0, 1, . . . , K_(ldpc)/M−1; and j=1,2, . . . , M−1.

Equation 1 can be expressed as following Equation 2:R _(i,j) ^((k)) ={R _(i,0) ^((k))+(j mod M)×Q _(ldpc)}mod(N _(ldpc) −K_(ldpc))  (2),where k=0, 1, 2, . . . D_(i)−1; i=0, 1, . . . , K_(ldpc)/M−1; and j=1,2, . . . , M−1. Since j=1, 2, . . . , M−1, (j mod M) of Equation 2 maybe regarded as j.

In the above equations, R_(i,j) ^((k)) is an index of a row where k^(th)1 is located in the j^(th) column in the i^(th) column group, N_(ldpc)is a length of an LDPC codeword, K_(ldpc) is a length of informationword bits, D_(i) is a degree of columns belonging to the i^(th) columngroup, M is the number of columns belonging to a single column group,and Q_(ldpc) is a size by which each column in the column group iscyclic-shifted.

As a result, referring to these equations, when only R_(i,0) ^((k)) isknown, the index R_(i,j) ^((k)) of the row where the k^(th) 1 is locatedin the j^(th) column in the i^(th) column group can be known. Therefore,when the index value of the row where the k^(th) 1 is located in the0^(th) column of each column group is stored, a position of column androw where 1 is located in the parity check matrix 200 having theconfiguration of FIG. 20 (that is, in the information word submatrix 210of the parity check matrix 200) can be known.

According to the above-described rules, all of the columns belonging tothe i^(th) column group have the same degree D_(i). Accordingly, theLDPC codeword which stores information on the parity check matrixaccording to the above-described rules may be briefly expressed asfollows.

For example, when N_(ldpc), is 30, K_(ldpc) is 15, and Q_(lpdc) is 3,position information of the row where 1 is located in the 0^(th) columnof the three column groups may be expressed by a sequence of Equations 3and may be referred to as “weight-1 position sequence”.R _(1,0) ⁽¹⁾=1,R _(1,0) ⁽²⁾=2,R _(1,0) ⁽³⁾=8,R _(1,0) ⁽⁴⁾=10R _(2,0) ⁽¹⁾=0,R _(2,0) ⁽²⁾=9,R _(2,0) ⁽³⁾=13,R _(3,0) ⁽¹⁾=0,R _(3,0) ⁽²⁾=14.  (3),where R_(i,j) ^((k)) is an index of a row where k^(th) 1 is located inthe j^(th) column in the i^(th) column group.

The weight-1 position sequence like Equation 3 which expresses an indexof a row where 1 is located in the 0^(th) column of each column groupmay be briefly expressed as in Table 3 presented below:

TABLE 3 1 2 8 10 0 9 13 0 14

Table 3 shows positions of elements having value 1 in the parity checkmatrix, and the i^(th) weight-1 position sequence is expressed byindexes of rows where 1 is located in the 0^(th) column belonging to thei^(th) column group.

The information word submatrix 210 of the parity check matrix accordingto an exemplary embodiment may be defined as in Tables 4 to 8 presentedbelow, based on the above descriptions.

Specifically, Tables 4 to 8 show indexes of rows where 1 is located inthe 0^(th) column of the i^(th) column group of the information wordsubmatrix 210. That is, the information word submatrix 210 is formed ofa plurality of column groups each including M number of columns, andpositions of 1 in the 0^(th) column of each of the plurality of columngroups may be defined by Tables 4 to 8.

Herein, the indexes of the rows where 1 is located in the 0^(th) columnof the i^(th) column group mean “addresses of parity bit accumulators”.The “addresses of parity bit accumulators” have the same meaning asdefined in the DVB-C2/S2/T2 standards or the ATSC 3.0 standards whichare currently being established, and thus, a detailed explanationthereof is omitted.

For example, when the length N_(ldpc) of the LDPC codeword is 64800, thecode rate is 6/15, and M is 360, the indexes of the rows where 1 islocated in the 0^(th) column of the i^(th) column group of theinformation word submatrix 210 are as shown in Table 4 presented below:

TABLE 4 i Index of row where 1 is located in the 0th column of the ithcolumn group 0 1606 3402 4961 6751 7132 11516 12300 12482 12592 1334213764 14123 21576 23946 24533 25376 25667 26836 31799 34173 35462 3615336740 37085 37152 37468 37658 1 4621 5007 6910 8732 9757 11508 1309915513 16335 18052 19512 21319 23663 25628 27208 31333 32219 33003 3323933447 36200 36473 36938 37201 37283 37495 38642 2 16 1094 2020 3080 41945098 5631 6877 7889 8237 9804 10067 11017 11366 13136 13354 15379 1893420199 24522 26172 28666 30386 32714 36390 37015 37162 3 700 897 17086017 6490 7372 7825 9546 10398 16605 18561 18745 21625 22137 23693 2434024966 25015 26995 28586 28895 29687 33938 34520 34858 37056 38297 4 1592010 2573 3617 4452 4958 5556 5832 6481 8227 9924 10836 14954 1559416623 18065 19249 22394 22677 23408 23731 24076 24776 27007 28222 3034338371 5 3118 3545 4768 4992 5227 6732 8170 9397 10522 11508 15536 2021821921 28599 29445 29758 29968 31014 32027 33685 34378 35867 36323 3672836870 38335 38623 6 1264 4254 6936 9165 9486 9950 10861 11653 1369713961 15164 15665 18444 19470 20313 21189 24371 26431 26999 28086 2825129261 31981 34015 35850 36129 37186 7 111 1307 1628 2041 2524 5358 79888191 10322 11905 12919 14127 15515 15711 17061 19024 21195 22902 2372724401 24608 25111 25228 27338 35398 37794 38196 8 961 3035 7174 794813355 13607 14971 18189 18339 18665 18875 19142 20615 21136 21309 2175823366 24745 25849 25982 27583 30006 31118 32106 36469 36583 37920 9 29903549 4273 4808 5707 6021 6509 7456 8240 10044 12262 12660 13085 1475015680 16049 21587 23997 25803 28343 28693 34393 34860 35490 36021 3773738296 10 955 4323 5145 6885 8123 9730 11840 12216 19194 20313 2305624248 24830 25268 26617 26801 28557 29753 30745 31450 31973 32839 3302533296 35710 37366 37509 11 264 605 4181 4483 5156 7238 8863 10939 1125112964 16254 17511 20017 22395 22818 23261 23422 24064 26329 27723 2818630434 31956 33971 34372 36764 38123 12 520 2562 2794 3528 3860 4402 56766963 8655 9018 9783 11933 16336 17193 17320 19035 20606 23579 2376924123 24966 27866 32457 34011 34499 36620 37526 13 10106 10637 1090634242 14 1856 15100 19378 21848 15 943 11191 27806 29411 16 4575 635913629 19383 17 4476 4953 18782 24313 18 5441 6381 21840 35943 19 96389763 12546 30120 20 9587 10626 11047 25700 21 4088 15298 28768 35047 222332 6363 8782 28863 23 4625 4933 28298 30289 24 3541 4918 18257 3174625 1221 25233 26757 34892 26 8150 16677 27934 30021 27 8500 25016 3304338070 28 7374 10207 16189 35811 29 611 18480 20064 38261 30 25416 2735236089 38469 31 1667 17614 25839 32776 32 4118 12481 21912 37945 33 557313222 23619 31271 34 18271 26251 27182 30587 35 14690 26430 26799 3435536 13688 16040 20716 34558 37 2740 14957 23436 32540 38 3491 14365 1468136858 39 4796 6238 25203 27854 40 1731 12816 17344 26025 41 19182 2166223742 27872 42 6502 13641 17509 34713 43 12246 12372 16746 27452 44 158921528 30621 34003 45 12328 20515 30651 31432 46 3415 22656 23427 3639547 632 5209 25958 31085 48 619 3690 19648 37778 49 9528 13581 2696536447 50 2147 26249 26968 28776 51 15698 18209 30683 52 1132 19888 3411153 4608 25513 38874 54 475 1729 34100 55 7348 32277 38587 56 182 1647333082 57 3865 9678 21265 58 4447 20151 27618 59 6335 14371 38711 60 7049695 28858 61 4856 9757 30546 62 1993 19361 30732 63 756 28000 29138 643821 24076 31813 65 4611 12326 32291 66 7628 21515 34995 67 1246 1329430068 68 6466 33233 35865 69 14484 23274 38150 70 21269 36411 37450 7123129 26195 37653

In another example, when the length N_(ldpc) of the LDPC codeword is64800, the code rate is 8/15, and M is 360, the indexes of the rowswhere 1 is located in the 0^(th) column of the i^(th) column group ofthe information word submatrix 210 are as shown in Table 5 presentedbelow:

TABLE 5 i Index of row where 1 is located in the 0th column of the ithcolumn group 0 2768 3039 4059 5856 6245 7013 8157 9341 9802 10470 1152112083 16610 18361 20321 24601 27420 28206 29788 1 2739 8244 8891 915712624 12973 15534 16622 16919 18402 18780 19854 20220 20543 22306 2554027478 27678 28053 2 1727 2268 6246 7815 9010 9556 10134 10472 1138914599 15719 16204 17342 17666 18850 22058 25579 25860 29207 3 28 13463721 5565 7019 9240 12355 13109 14800 16040 16839 17369 17631 1935719473 19891 20381 23911 29683 4 869 2450 4386 5316 6160 7107 10362 1113211271 13149 16397 16532 17113 19894 22043 22784 27383 28615 28804 5 5084292 5831 8559 10044 10412 11283 14810 15888 17243 17538 19903 2052822090 22652 27235 27384 28208 28485 6 389 2248 5840 6043 7000 9054 1107511760 12217 12565 13587 15403 19422 19528 21493 25142 27777 28566 287027 1015 2002 5764 6777 9346 9629 11039 11153 12690 13068 13990 1684117702 20021 24106 26300 29332 30081 30196 8 1480 3084 3467 4401 47985187 7851 11368 12323 14325 14546 16360 17158 18010 21333 25612 2655626906 27005 9 6925 8876 12392 14529 15253 15437 19226 19950 20321 2302123651 24393 24653 26668 27205 28269 28529 29041 29292 10 2547 3404 35384666 5126 5468 7695 8799 14732 15072 15881 17410 18971 19609 19717 2215024941 27908 29018 11 888 1581 2311 5511 7218 9107 10454 12252 1366215714 15894 17025 18671 24304 25316 25556 28489 28977 29212 12 1047 14941718 4645 5030 6811 7868 8146 10611 15767 17682 18391 22614 23021 2376325478 26491 29088 29757 13 59 1781 1900 3814 4121 8044 8906 9175 1115614841 15789 16033 16755 17292 18550 19310 22505 29567 29850 14 1952 30574399 9476 10171 10769 11335 11569 15002 19501 20621 22642 23452 2436025109 25290 25828 28505 29122 15 2895 3070 3437 4764 4905 6670 924411845 13352 13573 13975 14600 15871 17996 19672 20079 20579 25327 2795816 612 1528 2004 4244 4599 4926 5843 7684 10122 10443 12267 14368 1841319058 22985 24257 26202 26596 27899 17 1361 2195 4146 6708 7158 75389138 9998 14862 15359 16076 18925 21401 21573 22503 24146 24247 2777829312 18 5229 6235 7134 7655 9139 13527 15408 16058 16705 18320 1990920901 22238 22437 23654 25131 27550 28247 29903 19 697 2035 4887 52756909 9166 11805 15338 16381 18403 20425 20688 21547 24590 25171 2672628848 29224 29412 20 5379 17329 22659 23062 21 11814 14759 22329 2293622 2423 2811 10296 12727 23 8460 15260 16769 17290 24 14191 14608 2953630187 25 7103 10069 20111 22850 26 4285 15413 26448 29069 27 548 21379189 10928 28 4581 7077 23382 23949 29 3942 17248 19486 27922 30 866810230 16922 26678 31 6158 9980 13788 28198 32 12422 16076 24206 29887 338778 10649 18747 22111 34 21029 22677 27150 28980 35 7918 15423 2767227803 36 5927 18086 23525 37 3397 15058 30224 38 24016 25880 26268 391096 4775 7912 40 3259 17301 20802 41 129 8396 15132 42 17825 2811928676 43 2343 8382 28840 44 3907 18374 20939 45 1132 1290 8786 46 14814710 28846 47 2185 3705 26834 48 5496 15681 21854 49 12697 13407 2217850 12788 21227 22894 51 629 2854 6232 52 2289 18227 27458 53 7593 2193523001 54 3836 7081 12282 55 7925 18440 23135 56 497 6342 9717 57 1119922046 30067 58 12572 28045 28990 59 1240 2023 10933 60 19566 20629 2518661 6442 13303 28813 62 4765 10572 16180 63 552 19301 24286 64 6782 1848021383 65 11267 12288 15758 66 771 5652 15531 67 16131 20047 25649 6813227 23035 24450 69 4839 13467 27488 70 2852 4677 22993 71 2504 2811629524 72 12518 17374 24267 73 1222 11859 27922 74 9660 17286 18261 75232 11296 29978 76 9750 11165 16295 77 4894 9505 23622 78 10861 1198014110 79 2128 15883 22836 80 6274 17243 21989 81 10866 13202 22517 8211159 16111 21608 83 3719 18787 22100 84 1756 2020 23901 85 20913 2947330103 86 2729 15091 26976 87 4410 8217 12963 88 5395 24564 28235 89 385917909 23051 90 5733 26005 29797 91 1935 3492 29773 92 11903 21380 2991493 6091 10469 29997 94 2895 8930 15594 95 1827 10028 20070

In another example, when the length N_(ldpc) of the LDPC codeword is64800, the code rate is 10/15, and M is 360, the indexes of rows where 1exists in the 0^(th) column of the i^(th) column group of theinformation word submatrix 210 are defined as shown in Table 6 below.

TABLE 6 i Index of row where 1 is located in the 0th column of the ithcolumn group 0 979 1423 4166 4609 6341 8258 10334 10548 14098 1451417051 17333 17653 17830 17990 1 2559 4025 6344 6510 9167 9728 1131214856 17104 17721 18600 18791 19079 19697 19840 2 3243 6894 7950 1053912042 13233 13938 14752 16449 16727 17025 18297 18796 19400 21577 3 32723574 6341 6722 9191 10807 10957 12531 14036 15580 16651 17007 1730919415 19845 4 155 4598 10201 10975 11086 11296 12713 15364 15978 1639517542 18164 18451 18612 20617 5 1128 1999 3926 4069 5558 6085 6337 838610693 12450 15438 16223 16370 17308 18634 6 2408 2929 3630 4357 58527329 8536 8695 10603 11003 14304 14937 15767 18402 21502 7 199 3066 64466849 8973 9536 10452 12857 13675 15913 16717 17654 19802 20115 21579 8312 870 2095 2586 5517 6196 6757 7311 7368 13046 15384 18576 20349 2142421587 9 985 1591 3248 3509 3706 3847 6174 6276 7864 9033 13618 1567516446 18355 18843 10 975 3774 4083 5825 6166 7218 7633 9657 10103 1305214240 17320 18126 19544 20208 11 1795 2005 2544 3418 6148 8051 9066 972510676 10752 11512 15171 17523 20481 21059 12 167 315 1824 2325 2640 28686070 6597 7016 8109 9815 11608 16142 17912 19625 13 1298 1896 3039 43034690 8787 12241 13600 14478 15492 16602 17115 17913 19466 20597 14 5683695 6045 6624 8131 8404 8590 9059 9246 11570 14336 18657 18941 1921821506 15 228 1889 1967 2299 3011 5074 7044 7596 7689 9534 10244 1069711691 17902 21410 16 1330 1579 1739 2234 3701 3865 5713 6677 7263 1117212143 12765 17121 20011 21436 17 303 1668 2501 4925 5778 5985 9635 1014010820 11779 11849 12058 15650 20426 20527 18 698 2484 3071 3219 40544125 5663 5939 6928 7086 8054 12173 16280 17945 19302 19 232 1619 30404901 7438 8135 9117 9233 10131 13321 17347 17436 18193 18586 19929 20 123721 6254 6609 7880 8139 10437 12262 13928 14065 14149 15032 15694 1626418883 21 482 915 1548 1637 6687 9338 10163 11768 11970 15524 15695 1738618787 19210 19340 22 1291 2500 4109 4511 5099 5194 10014 13165 1325613972 15409 16113 16214 18584 20998 23 1761 4778 7444 7740 8129 83418931 9136 9207 10003 10678 13959 17673 18194 20990 24 3060 3522 53615692 6833 8342 8792 11023 11211 11548 11914 13987 15442 15541 19707 251322 2348 2970 5632 6349 7577 8782 9113 9267 9376 12042 12943 1668016970 21321 26 6785 11960 21455 27 1223 15672 19550 28 5976 11335 2038529 2818 9387 15317 30 2763 3554 18102 31 5230 11489 18997 32 5809 1577920674 33 2620 17838 18533 34 3025 9342 9931 35 3728 5337 12142 36 25206666 9164 37 12892 15307 20912 38 10736 12393 16539 39 1075 2407 1285340 4921 5411 18206 41 5955 15647 16838 42 6384 10336 19266 43 429 1042117266 44 4880 10431 12208 45 2910 11895 12442 46 7366 18362 18772 474341 7903 14994 48 4564 6714 7378 49 4639 8652 18871 50 15787 1804820246 51 3241 11079 13640 52 1559 2936 15881 53 2737 6349 10881 54 1039416107 17073 55 8207 9043 12874 56 7805 16058 17905 57 11189 15767 1776458 5823 12923 14316 59 11080 20390 20924 60 568 8263 17411 61 1845 35576562 62 2890 10936 14756 63 9031 14220 21517 64 3529 12955 15902 65 4136750 8735 66 6784 12092 16421 67 12019 13794 15308 68 12588 15378 1767669 8067 14589 19304 70 1244 5877 6085 71 15897 19349 19993 72 1426 239412264 73 3456 8931 12075 74 13342 15273 20351 75 9138 13352 20798 767031 7626 14081 77 4280 4507 15617 78 4170 10569 14335 79 3839 751416578 80 4688 12815 18782 81 4861 7858 9435 82 605 5445 12912 83 22804734 7311 84 6668 8128 12638 85 3733 10621 19534 86 13933 18316 19341 871786 3037 21566 88 2202 13239 16432 89 4882 5808 9300 90 4580 8484 1675491 14630 17502 18269 92 6889 11119 12447 93 8162 9078 16330 94 653817851 18100 95 17763 19793 20816 96 2183 11907 17567 97 6640 14428 1517598 877 12035 14081 99 1336 6468 12328 100 5948 9146 12003 101 3782 569912445 102 1770 7946 8244 103 7384 12639 14989 104 1469 11586 20959 1057943 10450 15907 106 5005 8153 10035 107 17750 18826 21513 108 4725 804110112 109 3837 16266 17376 110 11340 17361 17512 111 1269 4611 4774 1122322 10813 16157 113 16752 16843 18959 114 70 4325 18753 115 3165 815315384 116 160 8045 16823 117 14112 16724 16792 118 4291 7667 18176 1195943 19879 20721

In another example, when the length N_(ldpc) of the LDPC codeword is64800, the code rate is 10/15, and M is 360, the indexes of rows where 1exists in the 0^(th) column of the i^(th) column group of theinformation word submatrix 210 are defined as shown in Table 7 below.

TABLE 7 i Index of row where 1 is located in the 0th column of the ithcolumn group 0 316 1271 3692 9495 12147 12849 14928 16671 16938 1786419108 20502 21097 21115 1 2341 2559 2643 2816 2865 5137 5331 7000 75238023 10439 10797 13208 15041 2 5556 6858 7677 10162 10207 11349 1232112398 14787 15743 15859 15952 19313 20879 3 349 573 910 2702 3654 62149246 9353 10638 11772 14447 14953 16620 19888 4 204 1390 2887 3835 62306533 7443 7876 9299 10291 10896 13960 18287 20086 5 541 2429 2838 71448523 8637 10490 10585 11074 12074 15762 16812 17900 18548 6 733 16593838 523 5805 7882 9429 10682 13697 16909 18846 19587 19592 20904 7 11342136 4631 4653 4718 5197 10410 11666 14996 15305 16048 17417 18960 203038 734 1001 1283 4959 10016 10176 10973 11578 12051 15550 15915 1902219430 20121 9 745 4057 5855 9885 10594 10989 13156 13219 13351 1363113685 14577 17713 20386 10 968 1446 2130 2502 3092 3787 5323 8104 84189998 11681 13972 17747 17929 11 3020 3857 5275 5786 6319 8608 1194314062 17144 17752 18001 18453 19311 21414 12 709 747 1038 2181 5320 829210584 10859 13964 15009 15277 16953 20675 21509 13 1663 3247 5003 57607186 7360 10746 14211 14717 14792 15155 16128 17355 17970 14 516 5781914 6147 9419 11148 11434 13289 13325 13332 19106 19257 20962 21556 155009 5632 6531 9430 9886 10621 11765 13969 16178 16413 18110 18249 2061620759 16 457 2686 3318 4608 5620 5858 6480 7430 9602 12691 14664 1877720152 20848 17 33 2877 5334 6851 7907 8654 10688 15401 16123 17942 1796918747 18931 20224 18 87 897 7636 8663 11425 12288 12672 14199 1643517615 17950 18953 19667 20281 19 1042 1832 2545 2719 2947 3672 3700 62496398 6833 11114 14283 17694 20477 20 326 488 2662 2880 3009 5357 65878882 11604 14374 18781 19051 19057 20508 21 854 1294 2436 2852 4903 64667761 9072 9564 10321 13638 15658 16946 19119 22 194 899 1711 2408 27865391 7108 8079 8716 11453 17303 19484 20989 21389 23 1631 3121 3994 50057810 8850 10315 10589 13407 17162 18624 18758 19311 20301 24 736 24244792 5600 6370 10061 16053 16775 18600 25 1254 8163 8876 9157 1214114587 16545 17175 18191 26 388 6641 8974 10607 10716 14477 16825 1719118400 27 5578 6082 6824 7360 7745 8655 11402 11665 12428 28 3603 872913463 14698 15210 19112 19550 20727 21052 29 48 1732 3805 5158 1544216909 19854 21071 21579 30 11707 14014 21531 31 1542 4133 4925 32 1008313505 21198 33 14300 15765 16752 34 778 1237 11215 35 1325 3199 14534 362007 14510 20599 37 1996 5881 16429 38 5111 15018 15980 39 4989 1068112810 40 3763 10715 16515 41 2259 10080 15642 42 9032 11319 21305 433915 15213 20884 44 11150 15022 20201 45 1147 6749 19625 46 12139 1293918870 47 3840 4634 10244 48 1018 10231 17720 49 2708 13056 13393 50 578111588 18888 51 1345 2036 5252 52 5908 8143 15141 53 1804 13693 18640 5410433 13965 16950 55 9568 10122 15945 56 547 6722 14015 57 321 1284414095 58 2632 10513 14936 59 6369 11995 20321 60 9920 19136 21529 611990 2726 10183 62 5763 12118 15467 63 503 10006 19564 64 9839 1194219472 65 11205 13552 15389 66 8841 13797 19697 67 124 6053 18224 68 647714406 21146 69 1224 8027 16011 70 3046 4422 17717 71 739 12308 17760 724014 4130 7835 73 2266 5652 11981 74 2711 7970 18317 75 2196 15229 1721776 8636 13302 16764 77 5612 15010 16657 78 615 1249 4639 79 3821 1207318506 80 1066 16522 21536 81 11307 18363 19740 82 3240 8560 10391 833124 11424 20779 84 1604 8861 17394 85 2083 7400 8093 86 3218 7454 915587 9855 15998 20533 88 316 2850 20652 89 5583 9768 10333 90 7147 771318339 91 12607 17428 21418 92 14216 16954 18164 93 8477 15970 18488 941632 8032 9751 95 4573 9080 13507 96 11747 12441 13876 97 1183 1560516675 98 4408 10264 17109 99 5495 7882 12150 100 1010 3763 5065 101 982818054 21599 102 6342 7353 15358 103 6362 9462 19999 104 7184 13693 17622105 4343 4654 10995 106 7099 8466 18520 107 11505 14395 15138 108 677916691 18726 109 7146 12644 20196 110 5865 16728 19634 111 4657 871421246 112 4580 5279 18750 113 3767 6620 18905 114 9209 13093 17575 11512486 15875 19791 116 8046 14636 17491 117 2120 4643 13206 118 6186 967512601 119 784 5770 21585

In another example, when the length N_(ldpc) of the LDPC codeword is64800, the code rate is 12/15, and M is 360, the indexes of rows where 1exists in the 0^(th) column of the i^(th) column group of theinformation word submatrix 210 are defined as shown in Table 8 below.

TABLE 8 i Index of row where 1 is located in the 0th column of the ithcolumn group 0 584 1472 1621 1867 3338 3568 3723 4185 5126 5889 77378632 8940 9725 1 221 445 590 3779 3835 6939 7743 8280 8448 8491 936710042 11242 12917 2 4662 4837 4900 5029 6449 6687 6751 8684 9936 1168111811 11886 12089 12909 3 2418 3018 3647 4210 4473 7447 7502 9490 1006711092 11139 11256 12201 12383 4 2591 2947 3349 3406 4417 4519 5176 66728498 8863 9201 11294 11376 12184 5 27 101 197 290 871 1727 3911 54116676 8701 9350 10310 10798 12439 6 1765 1897 2923 3584 3901 4048 69637054 7132 9165 10184 10824 11278 12669 7 2183 3740 4808 5217 5660 63756787 8219 8466 9037 10353 10583 11118 12762 8 73 1594 2146 2715 35013572 3639 3725 6959 7187 8406 10120 10507 10691 9 240 732 1215 2185 27882830 3499 3881 4197 4991 6425 7061 9756 10491 10 831 1568 1828 3424 43194516 4639 6018 9702 10203 10417 11240 11518 12458 11 2024 2970 3048 36383676 4152 5284 5779 5926 9426 9945 10873 11787 11837 12 1049 1218 16512328 3493 4363 5750 6483 7613 8782 9738 9803 11744 11937 13 1193 20602289 2964 3478 4592 4756 6709 7162 8231 8326 11140 11908 12243 14 9782120 2439 3338 3850 4589 6567 8745 9656 9708 10161 10542 10711 12639 152403 2938 3117 3247 3711 5593 5844 5932 7801 10152 10226 11498 1216212941 16 1781 2229 2276 2533 3582 3951 5279 5774 7930 9824 10920 1103812340 12440 17 289 384 1980 2230 3464 3873 5958 8656 8942 9006 1017511425 11745 12530 18 155 354 1090 1330 2002 2236 3559 3705 4922 59586576 8564 9972 12760 19 303 876 2059 2142 5244 5330 6644 7576 8614 959810410 10718 11033 12957 20 3449 3617 4408 4602 4727 6182 8835 8928 93729644 10237 10747 11655 12747 21 811 2565 2820 8677 8974 9632 11069 1154811839 12107 12411 12695 12812 12890 22 972 4123 4943 6385 6449 7339 74778379 9177 9359 10074 11709 12552 12831 23 842 973 1541 2262 2905 52766758 7099 7894 8128 8325 8663 8875 10050 24 474 791 968 3902 4924 49655085 5908 6109 6329 7931 9038 9401 10568 25 1397 4461 4658 5911 60377127 7318 8678 8924 9000 9473 9602 10446 12692 26 1334 7571 12881 271393 1447 7972 28 633 1257 10597 29 4843 5102 11056 30 3294 8015 1051331 1108 10374 10546 32 5353 7824 10111 33 3398 7674 8569 34 7719 947810503 35 2997 9418 9581 36 5777 6519 11229 37 1966 5214 9899 38 6 40885827 39 836 9248 9612 40 483 7229 7548 41 7865 8289 9804 42 2915 1109811900 43 6180 7096 9481 44 1431 6786 8924 45 748 6757 8625 46 3312 44757204 47 1852 8958 11020 48 1915 2903 4006 49 6776 10886 12531 50 25949998 12742 51 159 2002 12079 52 853 3281 3762 53 5201 5798 6413 54 38826062 12047 55 4133 6775 9657 56 228 6874 11183 57 7433 10728 10864 587735 8073 12734 59 2844 4621 11779 60 3909 7103 12804 61 6002 9704 1106062 5864 6856 7681 63 3652 5869 7605 64 2546 2657 4461 65 2423 4203 911166 244 1855 4691 67 1106 2178 6371 68 391 1617 10126 69 250 9259 1060370 3435 4614 6924 71 1742 8045 9529 72 7667 8875 11451 73 4023 6108 691174 8621 10184 11650 75 6726 10861 12348 76 3228 6302 7388 77 1 1137 535878 381 2424 8537 79 3256 7508 10044 80 1980 2219 4569 81 2468 5699 1031982 2803 3314 12808 83 8578 9642 11533 84 829 4585 7923 85 59 329 5575 861067 5709 6867 87 1175 4744 12219 88 109 2518 6756 89 2105 10626 1115390 5192 10696 10749 91 6260 7641 8233 92 2998 3094 11214 93 3398 646611494 94 6574 10448 12160 95 2734 10755 12780 96 1028 7958 10825 97 85458602 10793 98 392 3398 11417 99 6639 9291 12571 100 1067 7919 8934 1011064 2848 12753 102 6076 8656 12690 103 5504 6193 10171 104 1951 71567356 105 4389 4780 7889 106 526 4804 9141 107 1238 3648 10464 108 25875624 12557 109 5560 5903 11963 110 1134 2570 3297 111 10041 11583 12157112 1263 9585 12912 113 3744 7898 10646 114 45 9074 10315 115 1051 618810038 116 2242 8394 12712 117 3598 9025 12651 118 2295 3540 5610 1191914 4378 12423 120 1766 3635 12759 121 5177 9586 11143 122 943 359011649 123 4864 6905 10454 124 5852 6042 10421 125 6095 8285 12349 1262070 7171 8563 127 718 12234 12716 128 512 10667 11353 129 3629 64857040 130 2880 8865 11466 131 4490 10220 11796 132 5440 8819 9103 1335262 7543 12411 134 516 7779 10940 135 2515 5843 9202 136 4684 599410586 137 573 2270 3324 138 7870 8317 10322 139 6856 7638 12909 140 15837669 10781 141 8141 9085 12555 142 3903 5485 9992 143 4467 11998 12904

In the above-described examples, the length of the LDPC codeword is64800 and the code rate is 6/15, 8/15, 10/15, and 12/15. However, thisis merely an example and the position of 1 in the information wordsubmatrix 210 may be defined variously when the length of the LDPCcodeword is 16200 or the code rate has different values.

According to an exemplary embodiment, even when the order of numbers ina sequence corresponding to the i^(th) column group of the parity checkmatrix 200 as shown in the above-described Tables 4 to 8 is changed, thechanged parity check matrix is a parity check matrix used for the samecode. Therefore, a case in which the order of numbers in the sequencecorresponding to the i^(th) column group in Tables 4 to 8 is changed iscovered by the inventive concept.

According to an exemplary embodiment, even when the arrangement order ofsequences corresponding to each column group is changed in Tables 4 to8, cycle characteristics on a graph of a code and algebraiccharacteristics such as degree distribution are not changed. Therefore,a case in which the arrangement order of the sequences shown in Tables 4to 8 is changed is also covered by the inventive concept.

In addition, even when a multiple of Q_(ldpc) is equally added to allsequences corresponding to a certain column group in Tables 4 to 8, thecycle characteristics on the graph of the code or the algebraiccharacteristics such as degree distribution are not changed. Therefore,a result of equally adding a multiple of Q_(ldpc) to the sequences shownin Tables 4 to 8 is also covered by the inventive concept. However, itshould be noted that, when the resulting value obtained by adding themultiple of Q_(ldpc) to a given sequence is greater than or equal to(N_(ldpc)−K_(ldpc)), a value obtained by applying a modulo operation for(N_(ldpc)−K_(ldpc)) to the resulting value should be applied instead.

Once positions of the rows where 1 exists in the 0^(th) column of thei^(th) column group of the information word submatrix 210 are defined asshown in Tables 4 to 8, positions of rows where 1 exists in anothercolumn of each column group may be defined since the positions of therows where 1 exists in the 0^(th) column are cyclic-shifted by Q_(ldpc)in the next column.

For example, in the case of Table 4, in the 0^(th) column of the 0^(th)column group of the information word submatrix 210, 1 exists in the1606^(th) row, 3402^(nd) row, 4961^(st) row, . . . .

In this case, sinceQ_(ldpc)=(N_(ldpc)−K_(ldpc))/M=(64800−25920)/360=108, the indexes of therows where 1 is located in the 1^(st) column of the 0^(th) column groupmay be 1714(=1606+108), 3510(=3402+108), 5069(=4961+108), . . . , andthe indexes of the rows where 1 is located in the 2^(nd) column of the0^(th) column group may be 1822(=1714+108), 3618(=3510+108),5177(=5069+108), . . . .

In the above-described method, the indexes of the rows where 1 islocated in all rows of each column group may be defined.

The parity submatrix 220 of the parity check matrix 200 shown in FIG. 20may be defined as follows:

The parity submatrix 220 includes N_(ldpc)−K_(ldpc) number of columns(that is, K_(ldpc) ^(th) column to (N_(ldpc)−1)^(th) column), and has adual diagonal or staircase configuration. Accordingly, the degree ofcolumns except the last column (that is, (N_(ldpc)−1)^(th) column) fromamong the columns included in the parity submatrix 220 is 2, and thedegree of the last column is 1.

As a result, the information word submatrix 210 of the parity checkmatrix 200 may be defined by Tables 4 to 8, and the parity submatrix 220of the parity check matrix 200 may have a dual diagonal configuration.

When the columns and rows of the parity check matrix 200 shown in FIG.20 are permutated based on Equation 4 and Equation 5, the parity checkmatrix shown in FIG. 20 may be changed to a parity check matrix 300shown in FIG. 21.Q _(ldpc) ·i+j⇒M·j+i(0≤i<M,0≤j<Q _(ldpc))  (4)K _(ldpc) +Q _(ldpc) ·k+l⇒K _(ldpc) +M·l+k(0≤k<M,0≤l<Q _(ldpc))  (5)

The method for permutating based on Equation 4 and Equation 5 will beexplained below. Since row permutation and column permutation apply thesame principle, the row permutation will be explained by the way of anexample.

In the case of the row permutation, regarding the X^(th) row, i and jsatisfying X=Q_(ldpc)×i+j are calculated and the X^(th) row ispermutated by assigning the calculated i and j to M×j+i. For example,regarding the 7^(th) row, i and j satisfying 7=2×i+j are 3 and 1,respectively. Therefore, the 7^(th) row is permutated to the 13^(th) row(10×1+3=13).

When the row permutation and the column permutation are performed in theabove-described method, the parity check matrix of FIG. 20 may beconverted into the parity check matrix of FIG. 21.

Referring to FIG. 21, the parity check matrix 300 is divided into aplurality of partial blocks, and a quasi-cyclic matrix of M×Mcorresponds to each partial block.

Accordingly, the parity check matrix 300 having the configuration ofFIG. 21 is formed of matrix units of M×M. That is, the submatrices ofM×M are arranged in the plurality of partial blocks, constituting theparity check matrix 300.

Since the parity check matrix 300 is formed of the quasi-cyclic matricesof M×M, M number of columns may be referred to as a column block and Mnumber of rows may be referred to as a row block. Accordingly, theparity check matrix 300 having the configuration of FIG. 21 is formed ofN_(qc_column)=N_(ldpc)/M number of column blocks andN_(qc_row)=N_(parity)/M number of row blocks.

Hereinafter, the submatrix of M×M will be explained.

First, the (N_(qc_column)−1)^(th) column block of the 0^(th) row blockhas a form shown in Equation 6 presented below:

$\begin{matrix}{A = \begin{bmatrix}0 & 0 & \ldots & 0 & 0 \\1 & 0 & \ldots & 0 & 0 \\0 & 1 & \ldots & 0 & 0 \\\vdots & \vdots & \vdots & \vdots & \vdots \\0 & 0 & \ldots & 1 & 0\end{bmatrix}} & (6)\end{matrix}$

As described above, A 330 is an M×M matrix, values of the 0^(th) row andthe (M−1)^(th) column are all “0”, and, regarding 0≤i≤(M−2), the(i+1)^(th) row of the i^(th) column is “1” and the other values are “0”.

Second, regarding 0≤i≤(N_(ldpc)−K_(ldpc))/M−1 in the parity submatrix320, the i^(th) row block of the (K_(ldpc)/M+i)^(th) column block isconfigured by a unit matrix I_(M×M) 340. In addition, regarding0≤i≤(N_(ldpc)−K_(ldpc))/M−2, the (i+1)^(th) row block of the(K_(ldpc)/M+i)^(th) column block is configured by a unit matrix I_(M×M)340.

Third, a block 350 constituting the information word submatrix 310 mayhave a cyclic-shifted format of a cyclic matrix P, P^(a) ^(ij) , or anadded format of the cyclic-shifted matrix P^(a) ^(ij) of the cyclicmatrix P (or an overlapping format).

For example, a format in which the cyclic matrix P is cyclic-shifted tothe right by 1 may be expressed by Equation 7 presented below:

$\begin{matrix}{A = \begin{bmatrix}0 & 1 & 0 & \; & 0 \\0 & 0 & 1 & \ldots & 0 \\\vdots & \vdots & \vdots & \; & \vdots \\0 & 0 & 0 & \ldots & 1 \\1 & 0 & 0 & \; & 0\end{bmatrix}} & (7)\end{matrix}$

The cyclic matrix P is a square matrix having an M×M size and is amatrix in which a weight of each of M number of rows is 1 and a weightof each of M number of columns is 1. When a_(ij) is 0, the cyclic matrixP, that is, P⁰ indicates a unit matrix I_(M×M), and when a_(ij) is ∞,P^(∞) is a zero matrix.

A submatrix existing where the i^(th) row block and the j^(th) columnblock intersect in the parity check matrix 300 of FIG. 21 may be P^(a)^(ij) . Accordingly, i and j indicate the number of row blocks and thenumber of column blocks in the partial blocks corresponding to theinformation word. Accordingly, in the parity check matrix 300, the totalnumber of columns is N_(ldpc)=M×N_(qc_column), and the total number ofrows is N_(parity)=M×N_(qc_row). That is, the parity check matrix 300 isformed of N_(qc_column) number of “column blocks” and N_(qc_row) numberof “row blocks”.

Hereinafter, a method for performing LDPC encoding based on the paritycheck matrix 200 as shown in FIG. 20 will be explained. An LDPC encodingprocess when the parity check matrix 200 is defined as shown in Table 4by way of an example will be explained for the convenience ofexplanation.

First, when information word bits having a length of K_(ldpc) are [i₀,i₁, i₂, . . . , i_(K) _(ldpc) ₋₁], and parity bits having a length ofN_(ldpc)−K_(ldpc) are [p₀, p₁, p₂, . . . p_(N) _(ldpc) _(-K) _(ldpc)₋₁], the LDPC encoding is performed by the following process.

Step 1) Parity bits are initialized as ‘0’. That is, p₀=p₁=p₂= . . .=p_(N) _(ldpc) _(-K) _(ldpc) ₋₁=0.

Step 2) The 0^(th) information word bit i₀ is accumulated in a paritybit having the address of the parity bit defined in the first row (thatis, the row of i=0) of table 4 as the index of the parity bit. This maybe expressed by Equation 8 presented below:

$\begin{matrix}{{{{P_{1606} = {{P_{1606} \oplus {i_{0}\mspace{31mu} P_{24533}}} = {P_{24533} \oplus i_{0}}}}{P_{3402} = {{P_{3402} \oplus {i_{0}\mspace{31mu} P_{25376}}} = {P_{25376} \oplus i_{0}}}}{P_{4961} = {{P_{4961} \oplus {i_{0}\mspace{31mu} P_{25667}}} = {P_{25667} \oplus i_{0}}}}{P_{6751} = {{P_{6751} \oplus {i_{0}\mspace{31mu} P_{26836}}} = {P_{26836} \oplus i_{0}}}}{P_{7132} = {{P_{7132} \oplus {i_{0}\mspace{31mu} P_{31799}}} = {P_{31799} \oplus i_{0}}}}{P_{11516} = {{P_{11516} \oplus {i_{0}\mspace{31mu} P_{34173}}} = {P_{34173} \oplus i_{0}}}}}{P_{12300} = {{P_{12300} \oplus {i_{0}\mspace{31mu} P_{35462}}} = {P_{35462} \oplus i_{0}}}}{P_{12482} = {{P_{12482} \oplus {i_{0}\mspace{31mu} P_{36153}}} = {P_{36153} \oplus i_{0}}}}{P_{12592} = {{P_{12592} \oplus {i_{0}\mspace{31mu} P_{36740}}} = {P_{36740} \oplus i_{0}}}}{P_{13342} = {{P_{13342} \oplus {i_{0}\mspace{31mu} P_{37085}}} = {P_{37085} \oplus i_{0}}}}{P_{13764} = {{P_{13764} \oplus {i_{0}\mspace{31mu} P_{37152}}} = {P_{37152} \oplus i_{0}}}}{P_{14123} = {{P_{14123} \oplus {i_{0}\mspace{31mu} P_{37468}}} = {P_{37468} \oplus i_{0}}}}{P_{21576} = {{P_{21576} \oplus {i_{0}\mspace{31mu} P_{37658}}} = {P_{37658} \oplus i_{0}}}}{P_{23946} = {P_{23946} \oplus i_{0}}}}\mspace{25mu}} & (8)\end{matrix}$

Herein, i₀ is a 0^(th) information word bit, p_(i) is an ith parity bit,and ⊕ is a binary operation. According to the binary operation, 1⊕1equals 0, 1⊕0 equals 1, 0⊕1 equals 1, 0⊕0 equals 0.

Step 3) The other 359 information word bits i_(m) (m=1, 2, . . . , 359)are accumulated in the parity bit. The other information word bits maybelong to the same column group as that of i₀. In this case, the addressof the parity bit may be determined based on Equation 9 presented below:(x+(m mod 360)×Q _(ldpc))mod(N _(ldpc) −K _(ldpc))  (9)

Herein, x is an address of a parity bit accumulator corresponding to theinformation word bit i₀, and Q_(ldpc) is a size by which each column iscyclic-shifted in the information word submatrix, and may be 108 in thecase of table 4. In addition, since m=1, 2, . . . , 359, (m mod 360) inEquation 9 may be regarded as m.

As a result, information word bits i_(m) (m=1, 2, . . . , 359) areaccumulated in the parity bits having the address of the parity bitcalculated based on Equation 9 as the index. For example, an operationas shown in Equation 10 presented below may be performed for theinformation word bit i₁:

$\begin{matrix}{{{P_{1714} = {{P_{1714} \oplus {i_{1}\mspace{31mu} P_{24641}}} = {P_{24641} \oplus i_{1}}}}{P_{3510} = {{P_{3510} \oplus {i_{1}\mspace{31mu} P_{25484}}} = {P_{25484} \oplus i_{1}}}}{P_{5069} = {{P_{5069} \oplus {i_{1}\mspace{31mu} P_{25775}}} = {P_{25775} \oplus i_{1}}}}{P_{6859} = {{P_{6859} \oplus {i_{1}\mspace{31mu} P_{26944}}} = {P_{26944} \oplus i_{1}}}}{P_{7240} = {{P_{7240} \oplus {i_{1}\mspace{31mu} P_{31907}}} = {P_{31907} \oplus i_{1}}}}{P_{11624} = {{P_{11624} \oplus {i_{1}\mspace{31mu} P_{34281}}} = {P_{34281} \oplus i_{1}}}}{P_{12408} = {{P_{12408} \oplus {i_{1}\mspace{31mu} P_{35570}}} = {P_{33570} \oplus i_{1}}}}{P_{12590} = {{P_{12590} \oplus {i_{1}\mspace{31mu} P_{36261}}} = {P_{36261} \oplus i_{1}}}}{P_{12700} = {{P_{12700} \oplus {i_{1}\mspace{31mu} P_{36848}}} = {P_{36848} \oplus i_{1}}}}{P_{13450} = {{P_{13450} \oplus {i_{1}\mspace{31mu} P_{37193}}} = {P_{37193} \oplus i_{1}}}}{P_{13872} = {{P_{13872} \oplus {i_{1}\mspace{31mu} P_{37260}}} = {P_{37260} \oplus i_{1}}}}{P_{14231} = {{P_{14231} \oplus {i_{1}\mspace{31mu} P_{37576}}} = {P_{37576} \oplus i_{1}}}}{P_{21684} = {{P_{21684} \oplus {i_{1}\mspace{31mu} P_{37766}}} = {P_{37766} \oplus i_{1}}}}{P_{24054} = {P_{24054} \oplus i_{1}}}}\mspace{31mu}} & (10)\end{matrix}$

Herein, i₁ is a 1^(st) information word bit, p_(i) is an ith parity bit,and ⊕ is a binary operation. According to the binary operation, 1⊕1equals 0, 1⊕0 equals 1, 0⊕1 equals 1, 0⊕0 equals 0.

Step 4) The 360^(th) information word bits i₃₆₀ is accumulated in aparity bit having the address of the parity bit defined in the 2^(nd)row (that is, the row of i=1) of table 4 as the index of the parity bit.

Step 5) The other 359 information word bits belonging to the same groupas that of the information word bit i₃₆₀ are accumulated in the paritybit. In this case, the address of the parity bit may be determined basedon Equation 9. However, in this case, x is the address of the parity bitaccumulator corresponding to the information word bit i₃₆₀.

Step 6) Steps 4 and 5 described above are repeated for all of the columngroups of table 4.

Step 7) As a result, a parity bit p_(i) is calculated based on Equation11 presented below. In this case, i is initialized as 1.p _(i) =p _(i) ⊕p _(i-1) i=1,2, . . . ,N _(ldpc) −K _(ldpc)−1  (11)

In Equation 11, p_(i) is an ith parity bit, N_(ldpc) is a length of anLDPC codeword, K_(ldpc) is a length of an information word of the LDPCcodeword, and ⊕ is a binary operation.

As a result, the encoder 110 may calculate the parity bits according tothe above-described method.

In another example, a parity check matrix according to an exemplaryembodiment may have a configuration as shown in FIG. 22.

Referring to FIG. 22, the parity check matrix 400 may be formed of 5matrices A, B, C, Z, and D. Hereinafter, the configuration of eachmatrix will be explained to explain the configuration of the paritycheck matrix 400.

First, M₁, M₂, Q₁, and Q₂, which are parameter values related to theparity check matrix 400 as shown in FIG. 22, may be defined as shown intable 9 presented below according to the length and the code rate of theLDPC codeword.

TABLE 9 Sizes Rate Length M₁ M₂ Q₁ Q₂ 1/15 16200 2520 12600 7 35 648001080 59400 3 165 2/15 16200 3240 10800 9 30 64800 1800 54360 5 151 3/1516200 1080 11880 3 33 64800 1800 50040 5 139 4/15 16200 1080 10800 3 3064800 1800 45720 5 127 5/15 16200 720 10080 2 28 64800 1440 41760 4 1166/15 16200 1080 8640 3 24 64800 1080 37800 3 105

The matrix A is formed of K number of columns and g number of rows, andthe matrix C is formed of K+g number of columns and N−K−g number ofrows. Herein, K is a length of information word bits, and N is a lengthof the LDPC codeword.

Indexes of rows where 1 is located in the 0^(th) column of the ithcolumn group in the matrix A and the matrix C may be defined based ontable 10 according to the length and the code rate of the LDPC codeword.In this case, an interval at which a pattern of a column is repeated ineach of the matrix A and the matrix C, that is, the number of columnsbelonging to the same group, may be 360.

For example, when the length N of the LDPC codeword is 64800 and thecode rate is 6/15, the indexes of rows where 1 is located in the 0^(th)column of the ith column group in the matrix A and the matrix C aredefined as shown in table 10 presented below:

TABLE 10 Index of row where 1 is located in the I 0th column of the ithcolumn group 0 71 276 856 6867 12964 17373 18159 26420 28460 28477 1 257322 672 2533 5316 6578 9037 10231 13845 36497 2 233 765 904 1366 387513145 15409 18620 23910 30825 3 100 224 405 12776 13868 14787 1678123886 29099 31419 4 23 496 891 2512 12589 14074 19392 20339 27658 286845 473 712 759 1283 4374 9898 12551 13814 24242 32728 6 511 567 815 1182317106 17900 19338 22315 24396 26448 7 45 733 836 1923 3727 17468 2574633806 35995 36657 8 17 487 675 2670 3922 5145 18009 23993 31073 36624 972 751 773 1937 17324 28512 30666 30934 31016 31849 10 257 343 594 1404119141 24914 26864 28809 32055 34753 11 99 241 491 2650 9670 17433 1778518988 22235 30742 12 198 299 655 6737 8304 10917 16092 19387 20755 3769013 351 916 926 18151 21708 23216 30321 33578 34052 37949 14 54 332 3732010 3332 5623 16301 34337 36451 37861 15 139 257 1068 11090 20289 2969429732 32640 35133 36404 16 457 885 968 2115 4956 5422 5949 17570 2667332387 17 137 570 619 5006 6099 7979 14429 16650 25443 32789 18 46 282287 10258 18383 20258 27186 27494 28429 38266 19 445 486 1058 1868 997611294 20364 23695 30826 35330 20 134 900 931 12518 14544 17715 1962321111 33868 34570 21 62 66 586 8020 20270 23831 31041 31965 32224 3518922 174 290 784 6740 14673 17642 26286 27382 33447 34879 23 332 675 10331838 12004 15439 20765 31721 34225 38863 24 527 558 832 3867 6318 831710883 13466 18427 25377 25 431 780 1021 1112 2873 7675 13059 17793 2057020771 26 339 536 1015 5725 6916 10846 14487 21156 28123 32614 27 456 8301078 7511 11801 12362 12705 17401 28867 34032 28 222 538 989 5593 60228302 14008 23445 25127 29022 29 37 393 788 3025 7768 11367 22276 2276128232 30394 30 234 257 1045 1307 2908 6337 26530 28142 34129 35997 31 3546 978 9912 9978 12567 17843 24194 34887 35206 32 39 959 967 5027 1084714657 18859 28075 28214 36325 33 275 477 823 11376 18073 28997 3052131661 31941 32116 34 185 580 966 11733 12013 12760 13358 19372 3253435504 35 760 891 1046 11150 20358 21638 29930 31014 33050 34840 36 360389 1057 5316 5938 14186 16404 32445 34021 35722 37 306 344 679 52246674 10305 18753 25583 30585 36943 38 103 171 1016 8780 11741 1214419470 20955 22495 27377 39 818 832 894 3883 14279 14497 22505 2812928719 31246 40 215 411 760 5886 25612 28556 32213 32704 35901 36130 41229 489 1067 2385 8587 20565 23431 28102 30147 32859 42 288 664 980 81388531 21676 23787 26708 28798 34490 43 89 552 847 6656 9889 23949 2622627080 31236 35823 44 66 142 443 3339 3813 7977 14944 15464 19186 2598345 605 876 931 16682 17669 25800 28220 33432 35738 37382 46 346 423 8065669 7668 8789 9928 19724 24039 27893 47 48 460 1055 3512 7389 754920216 22180 28221 35437 48 187 636 824 1678 4508 13588 19683 21750 3031133480 49 25 768 935 2856 8187 9052 21850 29941 33217 34293 50 349 624716 2698 6395 6435 8974 10649 15932 17378 51 336 410 871 3582 9830 1088513892 18027 19203 36659 52 176 849 1078 17302 19379 27964 28164 2872032557 35495 53 234 890 1075 9431 9605 9700 10113 11332 12679 24268 54516 638 733 8851 19871 22740 25791 30152 32659 35568 55 253 830 879 208616885 22952 23765 25389 34656 37293 56 94 954 998 2003 3369 6870 732129856 31373 34888 57 79 350 933 4853 6252 11932 12058 21631 24552 2487658 246 647 778 4036 10391 10656 13194 32335 32360 34179 59 149 339 4366971 8356 8715 11577 22376 28684 31249 60 36 149 220 6936 18408 1919219288 23063 28411 35312 61 273 683 1042 6327 10011 18041 21704 2909730791 31425 62 46 138 722 2701 10984 13002 19930 26625 28458 28965 63 121009 1040 1990 2930 5302 21215 22625 23011 29288 64 125 241 819 22453199 8415 21133 26786 27226 38838 65 45 476 1075 7393 15141 20414 3124433336 35004 38391 66 432 578 667 1343 10466 11314 11507 23314 2772034465 67 248 291 556 1971 3989 8992 18000 19998 23932 34652 68 68 694837 2246 7472 7873 11078 12868 20937 35591 69 272 924 949 2030 4360 62039737 19705 19902 38039 70 21 314 979 2311 2632 4109 19527 21920 3141334277 71 197 253 804 1249 4315 10021 14358 20559 27099 30525 72 980216164 17499 22378 22403 22704 26742 29908 73 9064 10904 12305 1405716156 26000 32613 34536 74 5178 6319 10239 19343 25628 30577 31110 32291

In the above-described example, the length of the LDPC codeword is 64800and the code rate 6/15. However, this is merely an example and theindexes of rows where 1 is located in the 0^(th) column of the ithcolumn group in the matrix A and the matrix C may be defined variouslywhen the length of the LDPC codeword is 16200 or the code rate hasdifferent values.

Hereinafter, positions of rows where 1 exists in the matrix A and thematrix C will be explained with reference to table 10 by way of anexample.

Since the length N of the LDPC codeword is 64800 and the code rate is6/15 in table 10, M₁=1080, M₂=37800, Q₁=3, and Q₂=105 in the paritycheck matrix 400 defined by table 10 with reference to table 9.

Herein, Q₁ is a size by which columns of the same column group arecyclic-shifted in the matrix A, and Q₂ is a size by which columns of thesame column group are cyclic-shifted in the matrix C.

In addition, Q₁=M₁/L, Q₂=M₂/L, M₁=g, and M₂=N−K−g, and L is an intervalat which a pattern of a column is repeated in the matrix A and thematrix C, and for example, may be 360.

The index of the row where 1 is located in the matrix A and the matrix Cmay be determined based on the M₁ value.

For example, since M₁=1080 in the case of table 10, the positions of therows where 1 exists in the 0^(th) column of the ith column group in thematrix A may be determined based on values smaller than 1080 from amongthe index values of table 10, and the positions of the rows where 1exists in the 0^(th) column of the ith column group in the matrix C maybe determined based on values greater than or equal to 1080 from amongthe index values of table 10.

Specifically, in table 10, the sequence corresponding to the 0^(th)column group is “71, 276, 856, 6867, 12964, 17373, 18159, 26420, 28460,28477”. Accordingly, in the case of the 0^(th) column of the 0^(th)column group of the matrix A, 1 may be located in the 71^(st) row,276^(th) row, and 856^(th) row, and, in the case of the 0^(th) column ofthe 0^(th) column group of the matrix C, 1 may be located in the6867^(th) row, 12964^(th) row, 17373^(rd) row, 18159^(th) row,26420^(th) row, 28460^(th) row, and 28477^(th) row.

Once positions of 1 in the 0^(th) column of each column group of thematrix A are defined, positions of rows where 1 exists in another columnof each column group may be defined by cyclic-shifting from the previouscolumn by Qt. Once positions of 1 in the 0^(th) column of each columngroup of the matrix C are defined, position of rows where 1 exists inanother column of each column group may be defined by cyclic-shiftingfrom the previous column by Q₂.

In the above-described example, in the case of the 0^(th) column of the0^(th) column group of the matrix A, 1 exists in the 71^(st) row,276^(th) row, and 856^(th) row. In this case, since Q₁=3, the indexes ofrows where 1 exists in the 1^(st) column of the 0^(th) column group are74(=71+3), 279(=276+3), and 859(=856+3), and the index of rows where 1exists in the 2^(nd) column of the 0^(th) column group are 77(=74+3),282 (=279+3), and 862(=859+3).

In the case of the 0^(th) column of the 0^(th) column group of thematrix C, 1 exists in the 6867^(th) row, 12964^(th) row, 17373^(rd) row,18159^(th) row, 26420^(th) row, 28460^(th) row, and 28477^(th) row. Inthis case, since Q₂=105, the index of rows where 1 exists in the 1^(st)column of the 0^(th) column group are 6972(=6867+105),13069(=12964+105), 17478(=17373+105), 18264(=18159+105),26525(=26420+105), 28565(=28460+105), 28582(=28477+105), and the indexesof rows where 1 exists in the 2^(nd) column of the 0^(th) column groupare 7077(=6972+105), 13174(=13069+105), 17583(=17478+105),18369(=18264+105), 26630(=26525+105), 28670(=28565+105),28687(=28582+105).

In this method, the positions of rows where 1 exists in all columngroups of the matrix A and the matrix C are defined.

The matrix B may have a dual diagonal configuration, the matrix D mayhave a diagonal configuration (that is, the matrix D is an identitymatrix), and the matrix Z may be a zero matrix.

As a result, the parity check matrix 400 shown in FIG. 22 may be definedby the matrices A, B, C, D, and Z having the above-describedconfigurations.

Hereinafter, a method for performing LDPC encoding based on the paritycheck matrix 400 shown in FIG. 22 will be explained. An LDPC encodingprocess when the parity check matrix 400 is defined as shown in Table 10by way of an example will be explained for the convenience ofexplanation.

For example, when an information word block S=(s₀, s₁, . . . , S_(K−1))is LDPC-encoded, an LDPC codeword Λ=(λ₀, λ₁, . . . , λ_(N-1))=(s₀, s₁, .. . , S_(K−1), p₀, p₁, . . . , P_(M) ₁ _(+M) ₂ ₋₁) including a paritybit P=(p₀, p₁, . . . , P_(M) ₁ _(+M) ₂ ₋₁) may be generated.

M₁ and M₂ indicate the size of the matrix B having the dual diagonalconfiguration and the size of the matrix C having the diagonalconfiguration, respectively, and M₁=g, M₂=N−K−g.

A process of calculating a parity bit is as follows. In the followingexplanation, the parity check matrix 400 is defined as shown in table 10by way of an example, for the convenience of explanation.

Step 1) λ and p are initialized as λ_(i)=s_(i) (i=0, 1, . . . , K−1),p_(j)=0 (j=0, 1, . . . , M₁+M₂−1).

Step 2) The 0^(th) information word bit λ₀ is accumulated in the addressof the parity bit defined in the first row (that is, the row of i=0) oftable 10. This may be expressed by Equation 12 presented below:

$\begin{matrix}{{{P_{71} = {{P_{71} \oplus {\lambda_{0}\mspace{31mu} P_{17373}}} = {P_{17373} \oplus \lambda_{0}}}}{P_{276} = {{P_{276} \oplus {\lambda_{0}\mspace{31mu} P_{18159}}} = {P_{18159} \oplus \lambda_{0}}}}{P_{856} = {{P_{856} \oplus {\lambda_{0}\mspace{31mu} P_{26420}}} = {P_{26420} \oplus \lambda_{0}}}}{P_{6867} = {{P_{6867} \oplus {\lambda_{0}\mspace{31mu} P_{28460}}} = {P_{28460} \oplus \lambda_{0}}}}{P_{12964} = {{P_{12964} \oplus {\lambda_{0\mspace{31mu}}P_{28477}}} = {P_{28477} \oplus \lambda_{0}}}}}\mspace{25mu}} & (12)\end{matrix}$

Step 3) Regarding the next L−1 number of information word bits λ_(m)(m=1, 2, . . . , L−1), λ_(m) is accumulated in the parity bit addresscalculated based on Equation 13 presented below:(χ+m×Q ₁)mod M ₁(if χ<M ₁)M ₁+{(χ−M ₁ +m×Q ₂)mod M ₂} (if χ≥M ₁)  (13)

Herein, x is an address of a parity bit accumulator corresponding to the0^(th) information word bit λ₀.

In addition, Q₁=M₁/L and Q₂=M₂/L. In addition, since the length N of theLDPC codeword is 64800 and the code rate is 6/15 in table 10, M₁=1080,M₂=37800, Q₁=3, Q₂=105, and L=360 with reference to table 9.

Accordingly, an operation as shown in Equation 14 presented below may beperformed for the 1^(st) information word bit λ₁:

$\begin{matrix}{{{P_{74} = {{P_{74} \oplus {\lambda_{1}\mspace{20mu} P_{17478}}} = {P_{17478} \oplus \lambda_{1}}}}{P_{279} = {{P_{279} \oplus {\lambda_{1}\mspace{31mu} P_{18264}}} = {P_{18264} \oplus \lambda_{1}}}}{P_{859} = {{P_{859} \oplus {\lambda_{1}\mspace{25mu} P_{26525}}} = {P_{26525} \oplus \lambda_{1}}}}{P_{6972} = {{P_{6972} \oplus {\lambda_{1}\mspace{25mu} P_{28565}}} = {P_{28565} \oplus \lambda_{1}}}}{P_{13069} = {{P_{13069} \oplus {\lambda_{1}\mspace{25mu} P_{28582}}} = {P_{28582} \oplus \lambda_{1}}}}}\mspace{25mu}} & (14)\end{matrix}$

Step 4) Since the same address of the parity bit as in the second row(that is the row of i=1) of table 10 is given to the Lth informationword bit λ_(L), in a similar method to the above-described method, theaddress of the parity bit regarding the next L−1 number of informationword bits λ_(m) (m=L+1, L+2, . . . , 2L−1) is calculated based onEquation 13. In this case, x is the address of the parity bitaccumulator corresponding to the information word bit λ_(L), and may beobtained based on the second row of table 10.

Step 5) The above-described processes are repeated for L number of newinformation word bits of each group by considering new rows of table 10as the address of the parity bit accumulator.

Step 6) After the above-described processes are repeated for thecodeword bits λ₀ to λ_(K−1), values regarding Equation 15 presentedbelow are calculated in sequence from i=1:P _(i) =P _(i) ⊕P _(i-1)(i=1,2, . . . ,M ₁−1)  (15)

Step 7) Parity bits λ_(K) to λ_(K+M) ₁ ₋₁ corresponding to the matrix Bhaving the dual diagonal configuration are calculated based on Equation16 presented below:λ_(K+L×t+s) =p _(Q) ₁ _(×S+t)(0≤s<L,0≤t<Q ₁)  (16)

Step 8) The address of the parity bit accumulator regarding L number ofnew codeword bits λ_(K) to λ_(K+M) ₁ ₋₁ of each group is calculatedbased on table 10 and Equation 13.

Step 9) After the codeword bits λ_(K) to λ_(K+M) ₁ ₋₁ are calculated,parity bits λ_(K+M) ₁ to λ_(K+M) ₁ _(+M) ₂ ₋₁ corresponding to thematrix C having the diagonal configuration are calculated based onEquation 17 presented below:λ_(K+M) ₁ _(+L×t+s) =p _(M) ₁ _(+Q) ₂ _(×S+t)(0≤s<L,0≤t≤Q ₂)  (17)

As a result, the parity bits may be calculated in the above-describedmethod.

Referring back to FIG. 19, the encoder 110 may perform the LDPC encodingby using various code rates such as 3/15, 4/15, 5/15, 6/15, 7/15, 8/15,9/15, 10/15, 11/15, 12/15, 13/15, etc. In addition, the encoder 110 maygenerate an LDPC codeword having various lengths such as 16200, 64800,etc., based on the length of the information word bits and the coderate.

In this case, the encoder 110 may perform the LDPC encoding by using theparity check matrix, and the parity check matrix is configured as shownin FIGS. 20 to 22.

In addition, the encoder 110 may perform Bose, Chaudhuri, Hocquenghem(BCH) encoding as well as LDPC encoding. To achieve this, the encoder110 may further include a BCH encoder (not shown) to perform BCHencoding.

In this case, the encoder 110 may perform encoding in an order of BCHencoding and LDPC encoding. Specifically, the encoder 110 may add BCHparity bits to input bits by performing BCH encoding and LDPC-encodesthe information word bits including the input bits and the BCH paritybits, thereby generating the LDPC codeword.

The interleaver 120 interleaves the LDPC codeword. That is, theinterleaver 120 receives the LDPC codeword from the encoder 110, andinterleaves the LDPC codeword based on various interleaving rules.

In particular, the interleaver 120 may interleave the LDPC codeword suchthat a bit included in a predetermined bit group from among a pluralityof bit groups constituting the LDPC codeword (that is, a plurality ofgroups or a plurality of blocks) is mapped onto a predetermined bit of amodulation symbol. Accordingly, the modulator 130 may map a bit includedin a predetermined group from among the plurality of groups of the LDPCcodeword onto a predetermined bit of the modulation symbol.

To achieve this, as shown in FIG. 23, the interleaver 120 may include aparity interleaver 121, a group interleaver (or a group-wise interleaver122), a group twist interleaver 123 and a block interleaver 124.

The parity interleaver 121 interleaves the parity bits constituting theLDPC codeword.

Specifically, when the LDPC codeword is generated based on the paritycheck matrix 200 having the configuration of FIG. 20, the parityinterleaver 121 may interleave only the parity bits of the LDPC codewordby using Equations 18 presented below:u _(i) =c _(i) for 0≤i<K _(ldpc), and

$\begin{matrix}{{u_{K_{ldpc} + {M \cdot t} + s} = {{C_{K_{ldpc} + {Q_{ldpc} \cdot s} + t}\mspace{14mu}{for}\mspace{14mu} 0} \leq s < M}},\;{0 \leq t < Q_{ldpc}},} & (18)\end{matrix}$where M is an interval at which a pattern of a column group is repeatedin the information word submatrix 210, that is, the number of columnsincluded in a column group (for example, M=360), and Q_(ldpc) is a sizeby which each column is cyclic-shifted in the information word submatrix210. That is, the parity interleaver 121 performs parity interleavingwith respect to the LDPC codeword c=(c₀, c₁, . . . , c_(N) _(ldpc) ₋₁),and outputs U=(u₀, . . . , u_(N) _(ldpc) ₋₁).

The LDPC codeword parity-interleaved in the above-described method maybe configured such that a predetermined number of continuous bits of theLDPC codeword have similar decoding characteristics (cycle distribution,a degree of a column, etc.).

For example, the LDPC codeword may have the same characteristics on thebasis of M number of continuous bits. Herein, M is an interval at whicha pattern of a column group is repeated in the information wordsubmatrix 210 and, for example, may be 360.

Specifically, a product of the LDPC codeword bits and the parity checkmatrix should be “0”. This means that a sum of products of the i^(th)LDPC codeword bit, c_(i) (i=0, 1, . . . , N_(ldpc)−1) and the i^(th)column of the parity check matrix should be a “0” vector. Accordingly,the i^(th) LDPC codeword bit may be regarded as corresponding to thei^(th) column of the parity check matrix.

In the case of the parity check matrix 200 of FIG. 20, M number ofcolumns in the information word submatrix 210 belong to the same groupand the information word submatrix 210 has the same characteristics onthe basis of a column group (for example, the columns belonging to thesame column group have the same degree distribution and the same cyclecharacteristic).

In this case, since M number of continuous bits in the information wordbits correspond to the same column group of the information wordsubmatrix 210, the information word bits may be formed of M number ofcontinuous bits having the same codeword characteristics. When theparity bits of the LDPC codeword are interleaved by the parityinterleaver 121, the parity bits of the LDPC codeword may be formed of Mnumber of continuous bits having the same codeword characteristics.

However, regarding the LDPC codeword encoded based on the parity checkmatrix 300 of FIG. 21 and the parity check matrix 400 of FIG. 22, parityinterleaving may not be performed. In this case, the parity interleaver121 may be omitted.

The group interleaver 122 may divide the parity-interleaved LDPCcodeword into a plurality of bit groups and rearrange the order of theplurality of bit groups in bit group wise (or bit group unit). That is,the group interleaver 122 may interleave the plurality of bit groups inbit group wise.

To achieve this, the group interleaver 122 divides theparity-interleaved LDPC codeword into a plurality of bit groups by usingEquation 19 or Equation 20 presented below.

$\begin{matrix}{\mspace{79mu}{X_{j} = {{\left\{ {{\left. u_{k} \middle| j \right. = \left\lfloor \frac{k}{360} \right\rfloor},{0 \leq k < N_{ldpc}}} \right\}{for}\mspace{14mu} 0} \leq j < N_{group}}}} & (19) \\{X_{j} = {{\left\{ {\left. u_{k} \middle| {{360 \times j} \leq k < {360 \times \left( {j + 1} \right)}} \right.,{0 \leq k < N_{ldpc}}} \right\}{for}\mspace{14mu} 0} \leq j < N_{group}}} & (20)\end{matrix}$where N_(group) is the total number of bit groups, X_(j) is the j^(th)bit group, and u_(k) is the k^(th) LDPC codeword bit input to the groupinterleaver 122. In addition,

$\left\lfloor \frac{k}{360} \right\rfloor$is the largest integer below k/360.

Since 360 in these equations indicates an example of the interval M atwhich the pattern of a column group is repeated in the information wordsubmatrix, 360 in these equations can be changed to M.

The LDPC codeword which is divided into the plurality of bit groups maybe as shown in FIG. 24.

Referring to FIG. 24, the LDPC codeword is divided into the plurality ofbit groups and each bit group is formed of M number of continuous bits.When M is 360, each of the plurality of bit groups may be formed of 360bits. Accordingly, the bit groups may be formed of bits corresponding tothe column groups of the parity check matrix.

Specifically, since the LDPC codeword is divided by M number ofcontinuous bits, K_(ldpc) number of information word bits are dividedinto (K_(ldpc)/M) number of bit groups and N_(ldpc)−K_(ldpc) number ofparity bits are divided into (N_(ldpc)−K_(ldpc))/M number of bit groups.Accordingly, the LDPC codeword may be divided into (N_(ldpc)/M) numberof bit groups in total.

For example, when M=360 and the length N_(ldpc) of the LDPC codeword is16200, the number of groups N_(group)s constituting the LDPC codeword is45(=16200/360), and, when M=360 and the length N_(ldpc) of the LDPCcodeword is 64800, the number of bit groups N_(group) constituting theLDPC codeword is 180(=64800/360).

As described above, the group interleaver 122 divides the LDPC codewordsuch that M number of continuous bits are included in a same group sincethe LDPC codeword has the same codeword characteristics on the basis ofM number of continuous bits. Accordingly, when the LDPC codeword isgrouped by M number of continuous bits, the bits having the samecodeword characteristics belong to the same group.

In the above-described example, the number of bits constituting each bitgroup is M. However, this is merely an example and the number of bitsconstituting each bit group is variable.

For example, the number of bits constituting each bit group may be analiquot part of M. That is, the number of bits constituting each bitgroup may be an aliquot part of the number of columns constituting acolumn group of the information word submatrix of the parity checkmatrix. In this case, each bit group may be formed of aliquot part of Mnumber of bits. For example, when the number of columns constituting acolumn group of the information word submatrix is 360, that is, M=360,the group interleaver 122 may divide the LDPC codeword into a pluralityof bit groups such that the number of bits constituting each bit groupis one of the aliquot parts of 360.

In the following explanation, the number of bits constituting a bitgroup is M by way of an example, for the convenience of explanation.

Thereafter, the group interleaver 122 interleaves the LDPC codeword inbit group wise. Specifically, the group interleaver 122 may group theLDPC codeword into the plurality of bit groups and rearrange theplurality of bit groups in bit group wise. That is, the groupinterleaver 122 changes positions of the plurality of bit groupsconstituting the LDPC codeword and rearranges the order of the pluralityof bit groups constituting the LDPC codeword in bit group wise.

Herein, the group interleaver 122 may rearrange the order of theplurality of bit groups in bit group wise such that bit groups includingbits mapped onto the same modulation symbol from among the plurality ofbit groups are spaced apart from one another at predetermined intervals.

In this case, the group interleaver 122 may rearrange the order of theplurality of bit groups in bit group wise by considering at least one ofthe number of rows and columns of the block interleaver 124, the numberof bit groups of the LDPC codeword, and the number of bits included ineach bit group, such that bit groups including bits mapped onto the samemodulation symbol are spaced apart from one another at predeterminedintervals.

To achieve this, the group interleaver 122 may rearrange the order ofthe plurality of groups in bit group wise by using Equation 21 presentedbelow:Y _(j) =X _(π(j))(0≤j<N _(group))  (21),where X_(j) is the j^(th) group before group interleaving, and Y_(j) isthe j^(th) bit group after group interleaving. In addition, π(j) is aparameter indicating an interleaving order and is determined by at leastone of a length of an LDPC codeword, a modulation method, and a coderate. That is, π(j) denotes a permutation order for group wiseinterleaving.

Accordingly, X_(π(j) is a π(j)) ^(th) bit group before groupinterleaving, and Equation 21 means that the pre-interleaving π(j)^(th)bit group is interleaved into the j^(th) bit group.

According to an exemplary embodiment, an example of π(j) may be definedas in Tables 11 to 22 presented below.

In this case, π(j) is defined according to a length of an LPDC codewordand a code rate, and a parity check matrix is also defined according toa length of an LDPC codeword and a code rate. Accordingly, when LDPCencoding is performed based on a specific parity check matrix accordingto a length of an LDPC codeword and a code rate, the LDPC codeword maybe interleaved in bit group wise based on π(j) satisfying thecorresponding length of the LDPC codeword and code rate.

For example, when the encoder 110 performs LDPC encoding at a code rateof 6/15 to generate an LDPC codeword of a length of 64800, the groupinterleaver 122 may perform interleaving by using π(j) which is definedaccording to the length of the LDPC codeword of 16200 and the code rateof 6/15 in tables 11 to 22 presented below.

For example, when the length of the LDPC codeword is 64800, the coderate is 6/15, and the modulation method (or modulation format) is16-Quadrature Amplitude Modulation (QAM), π(j) may be defined as intable 11 presented below. In particular, table 11 may be applied whenLDPC encoding is performed based on the parity check matrix defined bytable 4.

TABLE 11 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 55 146 83 52 62 176 160 68 53 56 81 97 79 113 163 61 5869 133 108 66 71 86 block of 144 57 67 116 59 70 156 172 65 149 155 82138 136 141 111 96 170 90 140 64 159 15 group-wise 14 37 54 44 63 43 1847 7 25 34 29 30 26 39 16 41 45 36 0 23 32 28 interleaver 27 38 48 33 2249 51 60 46 21 4 3 20 13 50 35 24 40 17 42 6 112 93 input 127 101 94 115105 31 19 177 74 10 145 162 102 120 126 95 73 152 129 174 125 72 128 78171 8 142 178 154 85 107 75 12 9 151 77 117 109 80 106 134 98 1 122 173161 150 110 175 166 131 119 103 139 148 157 114 147 87 158 121 164 10489 179 123 118 99 88 11 92 165 84 168 124 169 2 130 167 153 137 143 91100 5 76 132 135

In the case of Table 11, Equation 21 may be expressed asY₀=X_(π(0))=X₅₅, Y₁=X_(π(1))=X₁₄₆, Y₂=X_(π(2))=X₈₃, . . . ,Y₁₇₈=X_(π(178))=X₁₃₂, and Y₁₇₉=X_(π(179))=X₁₃₅. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 55^(th) bit group to the 0^(th) bitgroup, the 146^(th) bit group to the 1^(st) bit group, the 83^(rd) bitgroup to the 2^(nd) bit group, . . . , the 132^(nd) bit group to the178^(th) bit group, and the 135^(th) bit group to the 179^(th) bitgroup. Herein, the changing the Ath bit group to the Bth bit group meansrearranging the order of bit groups so that the Ath bit group is to bethe Bth bit group.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 8/15, and the modulation method is 16-QAM, π(j) may bedefined as in table 12 presented below. In particular, table 12 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 5.

TABLE 12 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 33 24 91 47 10 52 50 20 31 48 0 39 27 54 15 32 76 21 36 56 84 18169 7 5 11 136 35 165 8 3 106 159 138 19 4 128 168 166 144 149 1 179 1416 13 100 142 96 34 161 170 134 156 12 154 174 2 9 145 146 14 124 16 102133 176 132 135 116 130 177 160 129 108 125 147 97 148 162 173 163 122104 64 143 167 103 140 158 139 98 105 126 109 119 101 121 107 131 152164 175 151 127 114 137 157 153 171 155

In the case of Table 12, Equation 21 may be expressed asY₀=X_(π(0))=X₅₈, Y₁=X_(π(1))=X₅₅, Y₂=X_(π(2))=X₁₁₁, . . . ,Y₁₇₈=X_(π(178))=X₁₇₁, and Y₁₇₉=X_(π(179))=X₁₅₅. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 58^(th) bit group to the 0^(th) bitgroup, the 55^(th) bit group to the 1^(st) bit group, the 111^(th) bitgroup to the 2^(nd) bit group, . . . , the 171^(st) bit group to the178^(th) bit group, and the 155^(th) bit group to the 179^(th) bitgroup.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 10/15, and the modulation method is 16-QAM, π(j) may bedefined as in table 13 presented below. In particular, table 13 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 6.

TABLE 13 Order of bit groups to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45group- 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 6768 wise 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 8990 91 interleaver 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106107 108 109 110 111 112 113 114 output 115 116 117 118 119 120 121 122123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176177 178 179 π(j)-th 74 53 84 109 28 103 99 1 65 41 50 12 95 115 29 48 2535 89 62 80 71 8 block of 34 77 81 58 113 44 49 45 33 40 91 17 94 82 1646 93 104 36 92 111 57 116 group- 107 86 38 72 31 83 76 61 54 73 102 42108 85 110 97 14 30 60 27 66 118 69 wise 56 105 4 119 39 32 70 7 101 11452 47 15 117 13 55 37 96 88 112 68 106 5 interleaver 160 78 18 59 23 6419 79 134 63 24 20 156 3 90 2 10 75 21 98 26 9 128 input 147 11 161 162123 138 173 177 100 22 87 137 132 6 169 158 0 43 51 67 168 143 131 146144 139 176 164 155 175 170 125 171 152 154 157 127 124 129 142 135 172151 153 122 166 165 149 136 145 130 120 150 167 126 178 140 133 121 174141 148 179 159 163

In the case of Table 13, Equation 21 may be expressed asY₀=X_(π(0))=X₇₄, Y₁=X_(π(1))=X₅₃, Y₂=X_(π(2))=X₈₄, . . . ,Y₁₇₈=X_(π(178))=X₁₅₉, and Y₁₇₉=X_(π(179))=X₁₆₃. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 74^(th) bit group to the 0^(th) bitgroup, the 53^(rd) bit group to the 1^(st) bit group, the 84^(th) bitgroup to the 2^(nd) bit group, . . . , the 159^(th) bit group to the178^(th) bit group, and the 163^(rd) bit group to the 179^(th) bitgroup.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 10/15, and the modulation method is 16-QAM, π(j) may bedefined as in table 14 presented below. In particular, table 14 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 7.

TABLE 14 Order of bit groups to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45group- 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 6768 wise 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 8990 91 interleaver 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106107 108 109 110 111 112 113 114 output 115 116 117 118 119 120 121 122123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176177 178 179 π(j)-th 68 71 54 19 25 21 102 32 105 29 16 79 53 82 107 9167 94 85 48 83 58 42 block of 57 28 76 31 26 96 65 119 114 109 9 125 8143 103 93 70 46 89 112 61 45 66 group- 38 77 115 56 87 113 100 75 72 6047 92 36 98 4 59 6 44 20 86 3 73 95 wise 104 8 34 0 84 111 35 30 64 5580 40 97 101 2 69 63 74 62 118 110 159 18 interleaver 50 33 7 175 51 131106 134 88 140 117 132 147 153 116 161 10 39 126 136 90 37 174 input 41158 5 120 12 52 99 146 144 78 155 128 165 141 179 150 157 171 143 108170 22 49 11 27 160 178 133 142 121 168 173 123 13 15 154 127 139 151163 172 138 176 145 129 162 152 177 137 149 167 1 14 169 124 148 164 13017 156 122 23 166 135 24

In the case of Table 14, Equation 21 may be expressed asY₀=X_(π(0))=X₆₈, Y₁=X_(π(1))=X₇₁, Y₂=X_(π(2))=X₅₄, . . . ,Y₁₇₈=X_(π(178))=X₁₃₅, and Y₁₇₉=X_(π(179))=X₂₄. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 68^(th) bit group to the 0^(th) bitgroup, the 71^(st) bit group to the 1^(st) bit group, the 54^(th) bitgroup to the 2^(nd) bit group, . . . , the 135^(th) bit group to the178^(th) bit group, and the 24^(th) bit group to the 179^(th) bit group.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 12/15, and the modulation method is 16-QAM, π(j) may bedefined as in table 15 presented below. In particular, table 15 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 8.

TABLE 15 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 120 32 38 113 71 31 65 109 36 106 134 66 29 86 136 10883 70 79 81 105 48 30 block of 125 107 44 99 75 64 78 51 95 88 49 60 54122 140 137 89 74 129 82 164 59 3 group- 67 92 98 42 77 28 121 87 18 2193 72 2 142 112 9 50 8 90 139 14 97 63 wise 85 104 124 52 20 118 34 5 9441 68 80 110 12 133 131 53 116 123 96 61 111 33 interleaver 173 165 175166 169 174 159 148 158 155 145 178 126 100 154 156 179 157 46 149 17137 153 input 163 152 146 177 103 160 147 76 172 144 150 132 176 168 167162 170 138 151 161 40 26 130 119 114 117 115 84 57 62 13 47 24 0 7 1069 19 127 17 16 27 91 4 73 35 102 15 55 23 25 11 56 45 58 128 43 135 1143 141 6 22 101 39

In the case of Table 15, Equation 21 may be expressed asY₀=X_(π(0))=X₁₂₀, Y₁=X_(π(1))=X₃₂, Y₂=X_(π(2))=X₃₈, . . . ,Y₁₇₈=X_(π(178))=X₁₀₁, and Y₁₇₉=X_(π(179))=X₃₉. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 120^(th) bit group to the 0^(th) bitgroup, the 32^(nd) bit group to the 1^(st) bit group, the 38^(th) bitgroup to the 2^(nd) bit group, . . . , the 101^(st) bit group to the178^(th) bit group, and the 39^(th) bit group to the 179^(th) bit group.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 6/15, and the modulation method is 16-QAM, π(j) may bedefined as in table 16 presented below. In particular, table 16 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 10.

TABLE 16 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 163 160 138 143 85 108 128 121 91 147 140 142 131 79 109126 111 162 144 75 110 118 97 block of 81 168 157 167 90 103 80 150 125105 129 146 141 152 164 130 114 123 134 107 96 173 20 group-wise 44 6419 6 8 113 45 116 11 5 63 66 84 39 10 69 88 135 25 55 54 58 61interleaver 33 57 59 3 16 18 155 21 56 36 29 48 62 154 43 51 34 0 27 1224 17 42 input 145 1 38 2 28 112 31 60 179 13 30 50 95 14 15 9 26 71 13240 104 89 106 46 4 166 47 161 174 49 23 41 139 68 52 99 149 115 101 12722 158 7 169 153 122 117 159 93 100 82 151 171 67 94 136 72 73 74 70 8676 137 35 37 32 177 87 170 178 77 175 120 165 53 172 133 176 65 83 12492 78 119 102 156 148 98

In the case of Table 16, Equation 21 may be expressed asY₀=X_(π(0))=X₁₆₃, Y₁=X_(π(1))=X₁₆₀, Y₂=X_(π(2))=X₁₃₈, . . . ,Y₁₇₈=X_(7π(178))=X₁₄₈, and Y₁₇₉=X_(π(179))=X₉₈. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 163^(rd) bit group to the 0^(th) bitgroup, the 160^(th) bit group to the 1^(st) bit group, the 138^(th) bitgroup to the 2^(nd) bit group, . . . , the 148^(th) bit group to the178^(th) bit group, and the 98^(th) bit group to the 179^(th) bit group.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 6/15, and the modulation method is 64-QAM, π(j) may bedefined as in table 17 presented below. In particular, table 17 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 4.

TABLE 17 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 29 17 38 37 27 43 31 35 16 46 44 9 23 1 34 45 14 18 15619 22 40 50 block of 24 56 49 26 42 69 47 59 61 66 52 64 65 67 54 170 68132 51 70 41 21 5 group-wise 160 7 13 55 62 53 63 58 3 167 71 57 151 6036 25 74 39 32 72 85 86 107 interleaver 113 48 88 2 129 137 20 73 166 7577 142 174 15 149 28 145 92 169 30 133 163 119 input 82 176 152 134 139148 164 99 173 104 83 106 112 135 153 0 128 144 98 171 94 97 143 110 118127 84 79 108 126 131 93 111 91 4 125 162 157 158 109 140 123 154 150 8011 12 146 96 81 165 8 89 138 105 141 103 6 100 161 172 78 101 115 179147 116 136 122 87 33 130 124 175 120 90 102 10 114 159 76 177 178 121168 95 117 155

In the case of Table 17, Equation 21 may be expressed asY₀=X_(π(0))=X₂₉, Y₁=X_(π(1))=X₁₇, Y₂=X_(π(2))=X₃₈, . . . ,Y₁₇₈=X_(7π(178))=X₁₁₇, and Y₁₇₉=X_(π(179))=X₁₅₅. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 29^(th) bit group to the 0^(th) bitgroup, the 17^(th) bit group to the 1^(st) bit group, the 38^(th) bitgroup to the 2^(nd) bit group, . . . , the 117^(th) bit group to the178^(th) bit group, and the 155^(th) bit group to the 179^(th) bitgroup.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 8/15, and the modulation method is 64-QAM, π(j) may bedefined as in table 18 presented below. In particular, table 18 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 5.

TABLE 18 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 86 71 51 48 89 94 46 81 67 49 80 37 55 61 36 57 52 92 6082 76 72 44 block of 42 91 62 50 90 40 78 53 58 47 85 70 4 69 43 54 8493 38 8 64 6 18 group-wise 77 95 66 59 83 73 17 87 3 75 65 88 79 14 151117 32 22 123 30 33 162 144 interleaver 9 121 108 139 142 24 34 20 157159 138 143 29 140 163 150 175 114 31 12 35 145 28 input 27 26 16 98 102103 133 161 21 25 107 153 45 156 23 125 141 56 166 5 1 170 119 68 134 4174 179 2 129 169 101 99 109 127 168 176 11 0 122 110 113 146 132 165 1913 39 7 164 106 172 154 149 10 173 131 167 63 147 155 100 171 158 160 15178 148 152 104 124 177 97 130 118 137 111 126 120 105 115 136 112 96135 116 174 128

In the case of Table 18, Equation 21 may be expressed asY₀=X_(π(0))=X₈₆, Y₁=X_(π(1))=X₇₁, Y₂=X_(π(2))=X₅₁, . . . ,Y₁₇₈=X_(π(178))=X₁₇₄, and Y₁₇₉=X_(7π(179))=X₁₂₈. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 86^(th) bit group to the 0^(th) bitgroup, the 71^(st) bit group to the 1^(st) bit group, the 51^(st) bitgroup to the 2^(nd) bit group, . . . , the 174^(th) bit group to the178^(th) bit group, and the 128^(th) bit group to the 179^(th) bitgroup.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 10/15, and the modulation method is 64-QAM, π(j) may bedefined as in table 19 presented below. In particular, table 19 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 6.

TABLE 19 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 73 36 21 53 37 78 102 119 82 75 40 77 104 59 58 41 18 4645 93 30 49 114 block of 79 1 97 66 33 115 112 99 107 26 39 23 70 89 11662 55 50 96 108 57 51 86 group-wise 28 88 52 69 74 113 84 109 65 101 8111 61 44 105 83 35 130 27 106 90 92 6 interleaver 54 7 87 38 31 85 63117 67 110 72 94 32 118 47 48 68 76 60 91 64 17 142 input 156 24 12 4256 4 170 172 5 16 34 152 29 11 20 136 158 134 43 98 141 160 95 0 154 81169 71 171 162 139 175 129 25 167 9 131 123 165 140 124 178 10 14 145164 3 15 143 173 176 22 161 153 2 19 151 150 174 144 157 163 122 147 132137 128 159 155 127 138 103 100 120 146 168 166 148 13 125 177 133 126121 179 80 149 135

In the case of Table 19, Equation 21 may be expressed asY₀=X_(π(0))=X₇₃, Y₁=X_(π(1))=X₃₆, Y₂=X_(π(2))=X₂₁, . . . ,Y₁₇₈=X_(π(178))=X₁₄₉, and Y₁₇₉=X_(π(179))=X₁₃₅. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 73^(rd) bit group to the 0^(th) bitgroup, the 36^(th) bit group to the 1^(st) bit group, the 21^(st) bitgroup to the 2^(nd) bit group, . . . , the 149^(th) bit group to the178^(th) bit group, and the 135^(th) bit group to the 179^(th) bitgroup.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 10/15, and the modulation method is 64-QAM, π(j) may bedefined as in table 20 presented below. In particular, table 20 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 7.

TABLE 20 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 113 115 47 111 35 84 34 83 31 88 109 86 46 177 103 57 7773 95 150 52 107 98 block of 43 66 55 56 49 72 118 78 27 39 97 40 6 7579 68 93 59 119 20 10 51 108 group-wise 65 114 69 1 116 7 30 101 50 1438 99 71 96 128 82 92 166 60 178 117 45 157 interleaver 48 129 67 37 9489 53 100 54 91 173 169 63 149 104 70 61 102 110 124 80 29 18 input 1924 0 36 22 58 62 33 64 42 28 8 26 112 85 74 13 21 105 44 5 87 76 106 2581 90 11 3 168 121 153 140 152 135 174 23 139 12 16 9 146 164 142 15 1472 161 120 133 155 123 158 167 154 148 137 160 145 159 4 17 126 143 151162 156 172 171 131 41 179 132 136 32 175 163 165 141 138 122 127 125144 170 134 130 176

In the case of Table 20, Equation 21 may be expressed asY₀=X_(π(0))=X₁₁₃, Y₁=X_(π(1))=X₁₁₅, Y₂=X_(π(2))=X₄₇, . . . ,Y₁₇₈=X_(π(178))=X₁₃₀, and Y₁₇₉=X_(π(179))=X₁₇₆. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 113^(th) bit group to the 0^(th) bitgroup, the 115^(th) bit group to the 1^(st) bit group, the 47^(th) bitgroup to the 2^(nd) bit group, . . . , the 130^(th) bit group to the178^(th) bit group, and the 176^(th) bit group to the 179^(th) bitgroup.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 12/15, and the modulation method is 64-QAM, π(j) may bedefined as in table 21 presented below. In particular, table 21 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 8.

TABLE 21 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 83 93 94 47 55 40 38 77 110 124 87 61 102 76 33 35 92 5974 11 138 72 67 block of 37 10 95 139 131 44 57 97 53 142 0 136 9 143 86100 21 15 75 62 19 65 129 group-wise 101 79 22 68 73 23 18 81 98 112 8128 103 25 43 126 54 90 28 109 46 91 41 interleaver 82 113 134 52 105 7827 135 96 56 140 64 66 89 34 120 108 63 45 69 121 88 39 input 29 133 106117 127 32 42 58 71 118 51 84 85 80 104 132 111 30 26 48 50 31 141 116123 114 70 107 178 145 173 36 144 130 176 171 175 125 99 162 159 20 164115 169 172 165 161 151 119 122 152 157 4 137 148 153 170 154 166 13 15016 167 174 163 49 6 168 147 146 1 149 158 179 12 5 160 177 60 24 156 7155 17 3 2 14

In the case of Table 21, Equation 21 may be expressed asY₀=X_(π(0))=X₈₃, Y₁=X_(π(1))=X₉₃, Y₂=X_(π(2))=X₉₄, . . . ,Y₁₇₈=X_(7π(178))=X₂, and Y₁₇₉=X_(π(179))=X₁₄. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 83^(rd) bit group to the 0^(th) bitgroup, the 93^(rd) bit group to the 1^(st) bit group, the 94^(th) bitgroup to the 2^(nd) bit group, . . . , the 2^(nd) bit group to the178^(th) bit group, and the 14^(th) bit group to the 179^(th) bit group.

In another example, when the length of the LDPC codeword is 64800, thecode rate is 6/15, and the modulation method is 64-QAM, π(j) may bedefined as in table 22 presented below. In particular, table 22 may beapplied when LDPC encoding is performed based on the parity check matrixdefined by table 10.

TABLE 22 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 175 177 173 125 89 37 165 85 82 34 17 162 92 161 88 137149 115 113 172 123 43 4 block of 152 76 143 98 139 20 150 13 52 50 2524 153 133 122 55 10 83 18 27 51 15 8 group-wise 46 164 155 81 102 53 1121 47 61 7 126 1 57 26 148 56 171 22 166 101 67 119 interleaver 178 121118 96 80 99 68 167 90 62 147 36 140 103 5 87 157 176 59 66 3 64 91input 29 71 107 77 111 42 35 38 23 100 45 69 40 129 33 163 49 112 145 54105 117 0 108 94 79 12 19 106 60 39 104 28 2 73 97 75 154 84 58 144 95136 16 170 44 151 70 63 48 128 114 41 174 116 9 86 6 141 109 78 127 142159 65 130 124 93 30 110 32 160 135 132 134 14 146 74 120 158 138 179169 156 131 168 31 72

In the case of Table 22, Equation 21 may be expressed asY₀=X_(π(0))=X₁₇₅, Y₁=X_(π(1))=X₁₇₇, Y₂=X_(π(2))=X₁₇₃, . . . ,Y₁₇₈=X_(7π(178))=X₃₁, and Y₁₇₉=X_(π(179))=X₇₂. Accordingly, the groupinterleaver 122 may rearrange the order of the plurality of bit groupsin bit group wise by changing the 175^(th) bit group to the 0^(th) bitgroup, the 177^(th) bit group to the 1^(st) bit group, the 173^(rd) bitgroup to the 2^(nd) bit group, . . . , the 31^(st) bit group to the178^(th) bit group, and the 72^(nd) bit group to the 179^(th) bit group.

In the above-described examples, the length of the LDPC codeword is64800 and the code rate is 6/15, 8/15, 10/15, and 12/15. However, thisis merely an example and the interleaving pattern may be definedvariously when the length of the LDPC codeword is 16200 or the code ratehas different values.

As described above, the group interleaver 122 may rearrange the order ofthe plurality of bit groups in bit group wise by using Equation 21 andTables 11 to 22.

“j-th block of Group-wise Interleaver output” in tables 11 to 22indicates the j-th bit group output from the group interleaver 122 afterinterleaving, and “π(j)-th block of Group-wise Interleaver input”indicates the π(j)-th bit group input to the group interleaver 122.

In addition, since the order of the bit groups constituting the LDPCcodeword is rearranged by the group interleaver 122 in bit group wise,and then the bit groups are block-interleaved by the block interleaver124, which will be described below, “Order of bit groups to be blockinterleaved” is set forth in Tables 11 to 22 in relation to π(j).

The LDPC codeword which is group-interleaved in the above-describedmethod is illustrated in FIG. 25. Comparing the LDPC codeword of FIG. 25and the LDPC codeword of FIG. 24 before group interleaving, it can beseen that the order of the plurality of bit groups constituting the LDPCcodeword is rearranged.

That is, as shown in FIGS. 24 and 25, the groups of the LDPC codewordare arranged in order of bit group X₀, bit group X₁, . . . , bit groupX_(Ngroup-1) before being group-interleaved, and are arranged in anorder of bit group Y₀, bit group Y₁, . . . , bit group Y_(Ngroup-1)after being group-interleaved. In this case, the order of arranging thebit groups by the group interleaving may be determined based on Tables11 to 22.

The group twist interleaver 123 interleaves bits in a same group. Thatis, the group twist interleaver 123 may rearrange the order of the bitsin the same bit group by changing the order of the bits in the same bitgroup.

In this case, the group twist interleaver 123 may rearrange the order ofthe bits in the same bit group by cyclic-shifting a predetermined numberof bits from among the bits in the same bit group.

For example, as shown in FIG. 26, the group twist interleaver 123 maycyclic-shift bits included in the bit group Y₁ to the right by 1 bit. Inthis case, the bits located in the 0^(th) position, the 1^(st) position,the 2^(nd) position, . . . , the 358^(th) position, and the 359^(th)position in the bit group Y₁ as shown in FIG. 26 are cyclic-shifted tothe right by 1 bit. As a result, the bit located in the 359^(th)position before being cyclic-shifted is located in the front of the bitgroup Y₁ and the bits located in the 0^(th) position, the 1^(st)position, the 2^(nd) position, . . . , the 358^(th) position beforebeing cyclic-shifted are shifted to the right serially by 1 bit andlocated.

In addition, the group twist interleaver 123 may rearrange the order ofbits in each bit group by cyclic-shifting a different number of bits ineach bit group.

For example, the group twist interleaver 123 may cyclic-shift the bitsincluded in the bit group Y₁ to the right by 1 bit, and may cyclic-shiftthe bits included in the bit group Y₂ to the right by 3 bits.

However, the above-described group twist interleaver 123 may be omittedaccording to circumstances.

In addition, the group twist interleaver 123 is placed after the groupinterleaver 122 in the above-described example. However, this is merelyan example. That is, the group twist interleaver 123 changes only theorder of bits in a certain bit group and does not change the order ofthe bit groups. Therefore, the group twist interleaver 123 may be placedbefore the group interleaver 122.

The block interleaver 124 interleaves the plurality of bit groups theorder of which has been rearranged. Specifically, the block interleaver124 may interleave the plurality of bit groups the order of which hasbeen rearranged by the group interleaver 122 in bit group wise (or bitsgroup unit). The block interleaver 124 is formed of a plurality ofcolumns each including a plurality of rows and may interleave bydividing the plurality of rearranged bit groups based on a modulationorder determined according to a modulation method.

In this case, the block interleaver 124 may interleave the plurality ofbit groups the order of which has been rearranged by the groupinterleaver 122 in bit group wise. Specifically, the block interleaver124 may interleave by dividing the plurality of rearranged bit groupsaccording to a modulation order by using a first part and a second part.

Specifically, the block interleaver 124 interleaves by dividing each ofthe plurality of columns into a first part and a second part, writingthe plurality of bit groups in the plurality of columns of the firstpart serially in bit group wise, dividing the bits of the other bitgroups into groups (or sub bit groups) each including a predeterminednumber of bits based on the number of columns, and writing the sub bitgroups in the plurality of columns of the second part serially.

Herein, the number of bit groups which are interleaved in bit group wisemay be determined by at least one of the number of rows and columnsconstituting the block interleaver 124, the number of bit groups and thenumber of bits included in each bit group. In other words, the blockinterleaver 124 may determine the bit groups which are to be interleavedin bit group wise considering at least one of the number of rows andcolumns constituting the block interleaver 124, the number of bit groupsand the number of bits included in each bit group, interleave thecorresponding bit groups in bit group wise, and divide bits of the otherbit groups into sub bit groups and interleave the sub bit groups. Forexample, the block interleaver 124 may interleave at least part of theplurality of bit groups in bit group wise using the first part, anddivide bits of the other bit groups into sub bit groups and interleavethe sub bit groups using the second part.

Meanwhile, interleaving bit groups in bit group wise means that the bitsincluded in the same bit group are written in the same column. In otherwords, the block interleaver 124, in case of bit groups which areinterleaved in bit group wise, may not divide the bits included in thesame bit groups and write the bits in the same column, and in case ofbit groups which are not interleaved in bit group wise, may divide thebits in the bit groups and write the bits in different columns.

Accordingly, the number of rows constituting the first part is amultiple of the number of bits included in one bit group (for example,360), and the number of rows constituting the second part may be lessthan the number of bits included in one bit group.

In addition, in all bit groups interleaved by the first part, the bitsincluded in the same bit group are written and interleaved in the samecolumn of the first part, and in at least one group interleaved by thesecond part, the bits are divided and written in at least two columns ofthe second part.

The specific interleaving method will be described later.

Meanwhile, the group twist interleaver 123 changes only the order ofbits in the bit group and does not change the order of bit groups byinterleaving. Accordingly, the order of the bit groups to beblock-interleaved by the block interleaver 124, that is, the order ofthe bit groups to be input to the block interleaver 124, may bedetermined by the group interleaver 122. Specifically, the order of thebit groups to be block-interleaved by the block interleaver 124 may bedetermined by π(j) defined in Tables 11 to 22.

As described above, the block interleaver 124 may interleave theplurality of bit groups the order of which has been rearranged in bitgroup wise by using the plurality of columns each including theplurality of rows.

In this case, the block interleaver 124 may interleave the LDPC codewordby dividing the plurality of columns into at least two parts. Forexample, the block interleaver 124 may divide each of the plurality ofcolumns into the first part and the second part and interleave theplurality of bit groups constituting the LDPC codeword.

In this case, the block interleaver 124 may divide each of the pluralityof columns into N number of parts (N is an integer greater than or equalto 2) according to whether the number of bit groups constituting theLDPC codeword is an integer multiple of the number of columnsconstituting the block interleaver 124, and may perform interleaving.

When the number of bit groups constituting the LDPC codeword is aninteger multiple of the number of columns constituting the blockinterleaver 124, the block interleaver 124 may interleave the pluralityof bit groups constituting the LDPC codeword in bit group wise withoutdividing each of the plurality of columns into parts.

Specifically, the block interleaver 124 may interleave by writing theplurality of bit groups of the LDPC codeword on each of the columns inbit group wise in a column direction, and reading each row of theplurality of columns in which the plurality of bit groups are written inbit group wise in a row direction.

In this case, the block interleaver 124 may interleave by writing bitsincluded in a predetermined number of bit groups, which corresponds to aquotient obtained by dividing the number of bit groups of the LDPCcodeword by the number of columns of the block interleaver 124, on eachof the plurality of columns serially in a column direction, and readingeach row of the plurality of columns in which the bits are written in arow direction.

Hereinafter, the group located in the j^(th) position after beinginterleaved by the group interleaver 122 will be referred to as groupY_(j).

For example, it is assumed that the block interleaver 124 is formed of Cnumber of columns each including R₁ number of rows. In addition, it isassumed that the LDPC codeword is formed of N_(group) number of bitgroups and the number of bit groups N_(group) is a multiple of C.

In this case, when the quotient obtained by dividing N_(group) number ofbit groups constituting the LDPC codeword by C number of columnsconstituting the block interleaver 124 is A (=N_(group)/C) (A is aninteger greater than 0), the block interleaver 124 may interleave bywriting A (=N_(group)/C) number of bit groups on each column serially ina column direction and reading bits written on each column in a rowdirection.

For example, as shown in FIG. 27, the block interleaver 124 writes bitsincluded in bit group Y₀, bit group bit group Y₁, . . . , bit groupY_(A−1) in the 1^(st) column from the 1^(st) row to the R₁ ^(th) row,writes bits included in bit group Y_(A), bit group Y_(A+1), . . . , bitgroup Y_(2A−1) in the 2nd column from the 1^(st) row to the R₁ ^(th)row, . . . , and writes bits included in bit group Y_(CA−A), bit groupY_(CA−A+1), . . . , bit group Y_(CA−1) in the column C from the 1^(st)row to the R₁ ^(th) row. The block interleaver 124 may read the bitswritten in each row of the plurality of columns in a row direction.

Accordingly, the block interleaver 124 interleaves all bit groupsconstituting the LDPC codeword in bit group wise.

However, when the number of bit groups of the LDPC codeword is not aninteger multiple of the number of columns of the block interleaver 124,the block interleaver 124 may divide each column into 2 parts andinterleave a part of the plurality of bit groups of the LDPC codeword inbit group wise, and divide bits of the other bit groups into sub bitgroups and interleave the sub bit groups. In this case, the bitsincluded in the other bit groups, that is, the bits included in thenumber of groups which correspond to the remainder when the number ofbit groups constituting the LDPC codeword is divided by the number ofcolumns are not interleaved in bit group wise, but interleaved by beingdivided according to the number of columns.

Specifically, the block interleaver 124 may interleave the LDPC codewordby dividing each of the plurality of columns into two parts.

In this case, the block interleaver 124 may divide the plurality ofcolumns into the first part and the second part based on at least one ofthe number of columns of the block interleaver 124, the number of bitgroups of the LDPC codeword, and the number of bits of bit groups.

Here, each of the plurality of bit groups may be formed of 360 bits. Inaddition, the number of bit groups of the LDPC codeword is determinedbased on the length of the LDPC codeword and the number of bits includedin the bit group. For example, when an LDPC codeword in the length of16200 is divided such that each bit group has 360 bits, the LDPCcodeword is divided into 45 bit groups. Alternatively, when an LDPCcodeword in the length of 64800 is divided such that each bit group has360 bits, the LDPC codeword may be divided into 180 bit groups. Further,the number of columns constituting the block interleaver 124 may bedetermined according to a modulation method. This will be explained indetail below.

Accordingly, the number of rows constituting each of the first part andthe second part may be determined based on the number of columnsconstituting the block interleaver 124, the number of bit groupsconstituting the LDPC codeword, and the number of bits constituting eachof the plurality of bit groups.

Specifically, in each of the plurality of columns, the first part may beformed of as many rows as the number of bits included in at least onebit group which can be written in each column in bit group wise fromamong the plurality of bit groups of the LDPC codeword, according to thenumber of columns constituting the block interleaver 124, the number ofbit groups constituting the LDPC codeword, and the number of bitsconstituting each bit group.

In each of the plurality of columns, the second part may be formed ofrows excluding as many rows as the number of bits included in at leastsome bit groups which can be written in each of the plurality of columnsin bit group wise. Specifically, the number rows of the second part maybe the same value as a quotient when the number of bits included in allbit groups excluding bit groups corresponding to the first part isdivided by the number of columns constituting the block interleaver 124.In other words, the number of rows of the second part may be the samevalue as a quotient when the number of bits included in the remainingbit groups which are not written in the first part from among bit groupsconstituting the LDPC codeword is divided by the number of columns.

That is, the block interleaver 124 may divide each of the plurality ofcolumns into the first part including as many rows as the number of bitsincluded in bit groups which can be written in each column in bit groupwise, and the second part including the other rows.

Accordingly, the first part may be formed of as many rows as the numberof bits included in bit groups, that is, as many rows as an integermultiple of M. However, since the number of codeword bits constitutingeach bit group may be an aliquot part of M as described above, the firstpart may be formed of as many rows as an integer multiple of the numberof bits constituting each bit group.

In this case, the block interleaver 124 may interleave by writing andreading the LDPC codeword in the first part and the second part in thesame method.

Specifically, the block interleaver 124 may interleave by writing theLDPC codeword in the plurality of columns constituting each of the firstpart and the second part in a column direction, and reading theplurality of columns constituting the first part and the second part inwhich the LDPC codeword is written in a row direction.

That is, the block interleaver 124 may interleave by writing the bitsincluded in at least some bit groups which can be written in each of theplurality of columns in bit group wise in each of the plurality ofcolumns of the first part serially, dividing the bits included in theother bit groups except the at least some bit groups and writing in eachof the plurality of columns of the second part in a column direction,and reading the bits written in each of the plurality of columnsconstituting each of the first part and the second part in a rowdirection.

In this case, the block interleaver 124 may interleave by dividing theother bit groups except the at least some bit groups from among theplurality of bit groups based on the number of columns constituting theblock interleaver 124.

Specifically, the block interleaver 124 may interleave by dividing thebits included in the other bit groups by the number of a plurality ofcolumns, writing each of the divided bits in each of a plurality ofcolumns constituting the second part in a column direction, and readingthe plurality of columns constituting the second part, where the dividedbits are written, in a row direction.

That is, the block interleaver 124 may divide the bits included in theother bit groups except the bit groups written in the first part fromamong the plurality of bit groups of the LDPC codeword, that is, thebits in the number of bit groups which correspond to the remainder whenthe number of bit groups constituting the LDPC codeword is divided bythe number of columns, by the number of columns, and may write thedivided bits in each column of the second part serially in a columndirection.

For example, it is assumed that the block interleaver 124 is formed of Cnumber of columns each including R₁ number of rows. In addition, it isassumed that the LDPC codeword is formed of N_(group) number of bitgroups, the number of bit groups N_(group) is not a multiple of C, andA×C+1=N_(group) (A is an integer greater than 0). In other words, it isassumed that when the number of bit groups constituting the LDPCcodeword is divided by the number of columns, the quotient is A and theremainder is 1.

In this case, as shown in FIGS. 28 and 29, the block interleaver 124 maydivide each column into a first part including R₁ number of rows and asecond part including R₂ number of rows. In this case, R₁ may correspondto the number of bits included in bit groups which can be written ineach column in bit group wise, and R₂ may be R₁ subtracted from thenumber of rows of each column.

That is, in the above-described example, the number of bit groups whichcan be written in each column in bit group wise is A, and the first partof each column may be formed of as many rows as the number of bitsincluded in A number of bit groups, that is, may be formed of as manyrows as A×M number.

In this case, the block interleaver 124 writes the bits included in thebit groups which can be written in each column in bit group wise, thatis, A number of bit groups, in the first part of each column in thecolumn direction.

That is, as shown in FIGS. 28 and 29, the block interleaver 124 writesthe bits included in each of bit group Y₀, bit group Y₁, . . . , groupY_(A−1) in the 1^(st) to R₁ ^(th) rows of the first part of the 1^(st)column, writes bits included in each of bit group Y_(A), bit groupY_(A+1), . . . , bit group Y_(2A−1) in the 1^(st) to R₁ ^(th) rows ofthe first part of the 2^(nd) column, . . . , writes bits included ineach of bit group Y_(CA−A), bit group Y_(CA−A+1), . . . , bit groupY_(CA−1) in the 1^(st) to R₁ ^(th) rows of the first part of the columnC.

As described above, the block interleaver 124 writes the bits includedin the bit groups which can be written in each column in bit group wisein the first part of each column.

In other words, in the above exemplary embodiment, the bits included ineach of bit group (Y₀), bit group (Y₁), . . . , bit group (Y_(A−1)) maynot be divided and all of the bits may be written in the first column,the bits included in each of bit group (Y_(A)), bit group (Y_(A+1)), . .. , bit group (Y_(2A−1)) may not be divided and all of the bits may bewritten in the second column, and the bits included in each of bit group(Y_(CA−A)), bit group (Y_(CA−A+1)), . . . , group (Y_(CA−1)) may not bedivided and all of the bits may be written in the C column. As such, allbit groups interleaved by the first part are written in the same columnof the first part.

Thereafter, the block interleaver 124 divides bits included in the otherbit groups except the bit groups written in the first part of eachcolumn from among the plurality of bit groups, and writes the bits inthe second part of each column in the column direction. In this case,the block interleaver 124 divides the bits included in the other bitgroups except the bit groups written in the first part of each column bythe number of columns, so that the same number of bits are written inthe second part of each column, and writes the divided bits in thesecond part of each column in the column direction.

In the above-described example, since A×C+1=N_(group), when the bitgroups constituting the LDPC codeword are written in the first partserially, the last bit group Y_(Ngroup-1) of the LDPC codeword is notwritten in the first part and remains. Accordingly, the blockinterleaver 124 divides the bits included in the bit group Y_(Ngroup-1)into C number of sub bit groups as shown in FIG. 28, and writes thedivided bits (that is, the bits corresponding to the quotient when thebits included in the last group (Y_(Ngroup-1)) are divided by C) in thesecond part of each column serially.

The bits divided based on the number of columns may be referred to assub bit groups. In this case, each of the sub bit groups may be writtenin each column of the second part. That is, the bits included in the bitgroups may be divided and may form the sub bit groups.

That is, the block interleaver 124 writes the bits in the 1^(st) to R₂^(th) rows of the second part of the 1^(st) column, writes the bits inthe 1^(st) to R₂ ^(th) rows of the second part of the 2^(nd) column, . .. , and writes the bits in the 1^(st) to R₂ ^(th) rows of the secondpart of the column C. In this case, the block interleaver 124 may writethe bits in the second part of each column in the column direction asshown in FIG. 28.

That is, in the second part, the bits constituting the bit group may notbe written in the same column and may be written in the plurality ofcolumns. In other words, in the above example, the last bit group(Y_(Ngroup-1)) is formed of M number of bits and thus, the bits includedin the last bit group (Y_(Ngroup-1)) may be divided by M/C and writtenin each column. That is, the bits included in the last bit group(Y_(Ngroup-1)) are divided by M/C, forming M/C number of sub bit groups,and each of the sub bit groups may be written in each column of thesecond part.

Accordingly, in at least one bit group which is interleaved by thesecond part, the bits included in the at least one bit group are dividedand written in at least two columns constituting the second part.

In the above-described example, the block interleaver 124 writes thebits in the second part in the column direction. However, this is merelyan example. That is, the block interleaver 124 may write the bits in theplurality of columns of the second part in the row direction. In thiscase, the block interleaver 124 may write the bits in the first part inthe same method as described above.

Specifically, referring to FIG. 29, the block interleaver 124 writes thebits from the 1^(st) row of the second part in the 1^(st) column to the1^(st) row of the second part in the column C, writes the bits from the2^(nd) row of the second part in the 1^(st) column to the 2^(nd) row ofthe second part in the column C, . . . , etc., and writes the bits fromthe R₂ ^(th) row of the second part in the 1^(st) column to the R₂ ^(th)row of the second part in the column C.

On the other hand, the block interleaver 124 reads the bits written ineach row of each part serially in the row direction. That is, as shownin FIGS. 28 and 29, the block interleaver 124 reads the bits written ineach row of the first part of the plurality of columns serially in therow direction, and reads the bits written in each row of the second partof the plurality of columns serially in the row direction.

Accordingly, the block interleaver 124 may interleave a part of theplurality of bit groups constituting the LDPC codeword in bit groupwise, and divide and interleave some of the remaining bit groups. Thatis, the block interleaver 124 may interleave by writing the LDPCcodeword constituting a predetermined number of bit groups from amongthe plurality of bit groups in the plurality of columns of the firstpart in bit group wise, dividing the bits of the other bit groups andwriting the bits in each of the columns of the second part, and readingthe plurality of columns of the first and second parts in the rowdirection.

As described above, the block interleaver 124 may interleave theplurality of bit groups in the methods described above with reference toFIGS. 27 to 29.

In particular, in the case of FIG. 28, the bits included in the bitgroup which does not belong to the first part are written in the secondpart in the column direction and read in the row direction. In view ofthis, the order of the bits included in the bit group which does notbelong to the first part is rearranged. Since the bits included in thebit group which does not belong to the first part are interleaved asdescribed above, bit error rate (BER)/frame error rate (FER) performancecan be improved in comparison with a case in which such bits are notinterleaved.

However, the bit group which does not belong to the first part may notbe interleaved as shown in FIG. 29. That is, since the block interleaver124 writes and reads the bits included in the group which does notbelong to the first part in and from the second part in the rowdirection, the order of the bits included in the group which does notbelong to the first part is not changed and the bits are output to themodulator 130 serially. In this case, the bits included in the groupwhich does not belong to the first part may be output serially andmapped onto a modulation symbol.

In FIGS. 28 and 29, the last single bit group of the plurality of bitgroups is written in the second part. However, this is merely anexample. The number of bit groups written in the second part may varyaccording to the total number of bit groups of the LDPC codeword, thenumber of columns and rows, the number of transmission antennas, etc.

The block interleaver 124 may have a configuration as shown in tables 23and 24 presented below:

TABLE 23 N_(ldpc) = 64800 QPSK 16 QAM 64 QAM 256 QAM 1024 QAM 4096 QAM C2 4 6 8 10 12 R₁ 32400 16200 10800 7920 6480 5400 R₂ 0 0 0 180 0 0

TABLE 24 N_(ldpc) = 16200 QPSK 16 QAM 64 QAM 256 QAM 1024 QAM 4096 QAM C2 4 6 8 10 12 R₁ 7920 3960 2520 1800 1440 1080 R₂ 180 90 180 225 180 270

Herein, C (or N_(C)) is the number of columns of the block interleaver124, R₁ is the number of rows constituting the first part in eachcolumn, and R₂ is the number of rows constituting the second part ineach column.

Referring to Tables 23 and 24, the number of columns has the same valueas a modulation order according to a modulation method, and each of aplurality of columns is formed of rows corresponding to the number ofbits constituting the LDPC codeword divided by the number of a pluralityof columns.

For example, when the length N_(ldpc) of the LDPC codeword is 64800 andthe modulation method is 16-QAM, the block interleaver 124 is formed of4 columns as the modulation order is 4 in the case of 16-QAM, and eachcolumn is formed of rows as many as R₁+R₂=16200(=64800/4). In anotherexample, when the length N_(ldpc) of the LDPC codeword is 64800 and themodulation method is 64-QAM, the block interleaver 124 is formed of 6columns as the modulation order is 6 in the case of 64-QAM, and eachcolumn is formed of rows as many as R₁+R₂=10800(=64800/6).

Meanwhile, referring to Tables 23 and 24, when the number of bit groupsconstituting an LDPC codeword is an integer multiple of the number ofcolumns, the block interleaver 124 interleaves without dividing eachcolumn. Therefore, R₁ corresponds to the number of rows constitutingeach column, and R₂ is 0. In addition, when the number of bit groupsconstituting an LDPC codeword is not an integer multiple of the numberof columns, the block interleaver 124 interleaves the groups by dividingeach column into the first part formed of R₁ number of rows, and thesecond part formed of R₂ number of rows.

When the number of columns of the block interleaver 124 is equal to thenumber of bits constituting a modulation symbol, bits included in a samebit group are mapped onto a single bit of each modulation symbol asshown in Tables 23 and 24.

For example, when N_(ldpc)=64800 and the modulation method is 16-QAM,the block interleaver 124 may be formed of four (4) columns eachincluding 16200 rows. In this case, the bits included in each of theplurality of bit groups are written in the four (4) columns and the bitswritten in the same row in each column are output serially. In thiscase, since four (4) bits constitute a single modulation symbol in themodulation method of 16-QAM, bits included in the same bit group, thatis, bits output from a single column, may be mapped onto a single bit ofeach modulation symbol. For example, bits included in a bit groupwritten in the 1^(st) column may be mapped onto the first bit of eachmodulation symbol.

In another example, when N_(ldpc)=64800 and the modulation method is64-QAM, the block interleaver 124 may be formed of six (6) columns eachincluding 10800 rows. In this case, the bits included in each of theplurality of bit groups are written in the six (6) columns and the bitswritten in the same row in each column are output serially. In thiscase, since six (6) bits constitute a single modulation symbol in themodulation method of 64-QAM, bits included in the same bit group, thatis, bits output from a single column, may be mapped onto a single bit ofeach modulation symbol. For example, bits included in a bit groupwritten in the 1^(st) column may be mapped onto the first bit of eachmodulation symbol.

Referring to Tables 23 and 24, the total number of rows of the blockinterleaver 124, that is, R₁+R₂, is N_(ldpc)/C.

In addition, the number of rows of the first part, R₁, is an integermultiple of the number of bits included in each group, M (e.g., M=360),and may be expressed as └N_(group)/C┘×M, and the number of rows of thesecond part, R₂, may be N_(ldpc)/C−R₁. Herein, └N_(group)/C┘ is thelargest integer below N_(group)/C. Since R₁ is an integer multiple ofthe number of bits included in each group, M, bits may be written in R₁in bit groups wise.

In addition, when the number of bit groups of the LDPC codeword is not amultiple of the number of columns, it can be seen from Tables 23 and 24that the block interleaver 124 interleaves by dividing each column intotwo parts.

Specifically, the length of the LDPC codeword divided by the number ofcolumns is the total number of rows included in the each column. In thiscase, when the number of bit groups of the LDPC codeword is a multipleof the number of columns, each column is not divided into two parts.However, when the number of bit groups of the LDPC codeword is not amultiple of the number of columns, each column is divided into twoparts.

For example, it is assumed that the number of columns of the blockinterleaver 124 is identical to the number of bits constituting amodulation symbol, and an LDPC codeword is formed of 64800 bits as shownin Table 28. In this case, each bit group of the LDPC codeword is formedof 360 bits, and the LDPC codeword is formed of 64800/360(=180) bitgroups.

When the modulation method is 16-QAM, the block interleaver 124 may beformed of four (4) columns and each column may have 64800/4(=16200)rows.

In this case, since the number of bit groups of the LDPC codeworddivided by the number of columns is 180/4(=45), bits can be written ineach column in bit group wise without dividing each column into twoparts. That is, bits included in 45 bit groups which is the quotientwhen the number of bit groups constituting the LDPC codeword is dividedby the number of columns, that is, 45×360(=16200) bits can be written ineach column.

However, when the modulation method is 256-QAM, the block interleaver124 may be formed of eight (8) columns and each column may have64800/8(=8100) rows.

In this case, since the number of bit groups of the LDPC codeworddivided by the number of columns is 180/8=22.5, the number of bit groupsconstituting the LDPC codeword is not an integer multiple of the numberof columns. Accordingly, the block interleaver 124 divides each of theeight (8) columns into two parts to perform interleaving in bit groupwise.

In this case, since the bits should be written in the first part of eachcolumn in bit group wise, the number of bit groups which can be writtenin the first part of each column in bit group wise is 22, which is thequotient when the number of bit groups constituting the LDPC codeword isdivided by the number of columns, and accordingly, the first part ofeach column has 22×360(=7920) rows. Accordingly, 7920 bits included in22 bit groups may be written in the first part of each column.

The second part of each column has rows which are the rows of the firstpart subtracted from the total rows of each column. Accordingly, thesecond part of each column includes 8100-7920(=180) rows.

In this case, the bits included in the other bit groups which have notbeen written in the first part are divided and written in the secondpart of each column.

Specifically, since 22×8(=176) bit groups are written in the first part,the number of bit groups to be written in the second part is 180−176(=4) (for example, bit group Y₁₇₆, bit group Y₁₇₇, bit group Y₁₇₈, andbit group Y₁₇₉ from among bit group Y₀, bit group Y₁, bit group Y₂, . .. , bit group Y₁₇₈, and bit group Y₁₇₉ constituting the LDPC codeword).

Accordingly, the block interleaver 124 may write the four (4) bit groupswhich have not been written in the first part and remains from among thegroups constituting the LDPC codeword in the second part of each columnserially.

That is, the block interleaver 124 may write 180 bits of the 360 bitsincluded in the bit group Y₁₇₆ in the 1^(st) row to the 180^(th) row ofthe second part of the 1^(st) column in the column direction, and maywrite the other 180 bits in the 1^(st) row to the 180^(th) row of thesecond part of the 2^(nd) column in the column direction. In addition,the block interleaver 124 may write 180 bits of the 360 bits included inthe bit group Y₁₇₇ in the 1^(st) row to the 180^(th) row of the secondpart of the 3^(rd) column in the column direction, and may write theother 180 bits in the 1^(st) row to the 180^(th) row of the second partof the 4^(th) column in the column direction. In addition, the blockinterleaver 124 may write 180 bits of the 360 bits included in the bitgroup Y₁₇₈ in the 1^(st) row to the 180^(th) row of the second part ofthe 5^(th) column in the column direction, and may write the other 180bits in the 1^(st) row to the 180^(th) row of the second part of the6^(th) column in the column direction. In addition, the blockinterleaver 124 may write 180 bits of the 360 bits included in the bitgroup Y₁₇₉ in the 1^(st) row to the 180^(th) row of the second part ofthe 7^(th) column in the column direction, and may write the other 180bits in the 1^(st) row to the 180^(th) row of the second part of the8^(th) column in the column direction.

Accordingly, the bits included in the bit group which has not beenwritten in the first part and remains are not written in the same columnin the second part and may be divided and written in the plurality ofcolumns.

Hereinafter, the block interleaver 124 of FIG. 23 according to anexemplary embodiment will be explained in detail with reference to FIG.30.

In a group-interleaved LDPC codeword (v₀, v₁, . . . , v_(N) _(ldpc) ₋₁),Y_(j) is continuously arranged like V={Y₀, Y₁, . . . Y_(N) _(group) ₋₁}.

The LDPC codeword after group interleaving may be interleaved by theblock interleaver 124 as shown in FIG. 30. In this case, the blockinterleaver 124 divide a plurality of columns into the first part(Part 1) and the second part (Part 2) based on the number of columns ofthe block interleaver 124 and the number of bits of bit groups. In thiscase, in the first part, the bits constituting the bit groups may bewritten in the same column, and in the second part, the bitsconstituting the bit groups may be written in a plurality of columns(i.e. the bits constituting the bit groups may be written in at leasttwo columns).

Specifically, input bits vi are written serially from the first part tothe second part column wise, and then read out serially from the firstpart to the second part row wise. That is, the data bits v_(i) arewritten serially into the block interleaver column-wise starting in thefirst apart and continuing column-wise finishing in the second part, andthen read out serially row-wise from the first part and then row-wisefrom the second part. Accordingly, the bit included in the same bitgroup in the first part may be mapped onto a single bit of eachmodulation symbol.

In this case, the number of columns and the number of rows of the firstpart and the second part of the block interleaver 124 vary according toa modulation format and a length of the LDPC codeword as in Table 25presented below. That is, the first part and the second part blockinterleaving configurations for each modulation format and code lengthare specified in Table 25 presented below. Herein, the number of columnsof the block interleaver 124 may be equal to the number of bitsconstituting a modulation symbol. In addition, a sum of the number ofrows of the first part, N_(r1) and the number of rows of the secondpart, N_(r2), is equal to N_(ldpc)/N_(C) (herein, N_(C) is the number ofcolumns). In addition, since

N_(r 1)( = ⌊N_(group)/N_(c)⌋ × 360)is a multiple of 360, a multiple of bit groups may be written in thefirst part.

TABLE 25 Rows in Part 1 N_(r1) Rows in Part 2 N_(r2) N_(ldpc) = N_(ldpc)= N_(ldpc) = N_(ldpc) = Columns Modulation 64800 16200 64800 16200 N_(c)QPSK 32400 7920 0 180 2 16-QAM 16200 3960 0 90 4 64-QAM 10800 2520 0 1806 256-QAM 7920 1800 180 225 8 1024-QAM 6480 1440 0 180 10 4096-QAM 54001080 0 270 12

Hereinafter, an operation of the block interleaver 124 will be explainedin detail.

Specifically, as shown in FIG. 30, the input bit v_(i)(0≤i<N_(C)×N_(r1)) is written in r_(i) row of c_(i) column of the firstpart of the block interleaver 124. Herein, c_(i) and r_(i) are

$c_{i} = \left\lfloor \frac{i}{N_{r\; 1}} \right\rfloor$and r_(i)=(i mod N_(r1)), respectively.

In addition, the input bit v_(i) (N_(C)×N_(r1)≤i<N_(ldpc)) is written inr_(i) row of c_(i) column of the second part of the block interleaver124. Herein, c_(i) and r_(i) satisfy

$c_{i} = \left\lfloor \frac{\left( {i - {N_{C} \times N_{r\; 1}}} \right)}{N_{r\; 2}} \right\rfloor$and r_(i)=N_(r1)+{(i×N_(C)×N_(r1))mod N_(r2)}, respectively.

An output bit q_(j)(0≤j<N_(ldpc)) is read from c_(j) column of r_(j)row. Herein, r_(j) and c_(j) satisfy

$r_{j} = \left\lfloor \frac{j}{N_{c}} \right\rfloor$and c_(j)=(j mod N_(C)), respectively.

For example, when the length N_(ldpc) of an LDPC codeword is 64800 andthe modulation method is 256-QAM, the order of bits output from theblock interleaver 124 may be (q₀, q₁, q₂, . . . , q₆₃₃₅₇, q₆₃₃₅₈,q₆₃₃₅₉, q₆₃₃₆₀, q₆₃₃₆₁, . . . , q₆₄₇₉₉)=(v₀, v₇₉₂₀, v₁₅₈₄₀, . . . ,v₄₇₅₁₉, v₅₅₄₃₉, v₆₃₃₅₉, v₆₃₃₆₀, v₆₃₅₄₀, . . . , v₆₄₇₉₉). Herein, theindexes of the right side of the foregoing equation may be specificallyexpressed for the eight (8) columns as 0, 7920, 15840, 23760, 31680,39600, 47520, 55440, 1, 7921, 15841, 23761, 31681, 39601, 47521, 55441,. . . , 7919, 15839, 23759, 31679, 39599, 47519, 55439, 63359, 63360,63540, 63720, 63900, 64080, 64260, 64440, 64620, . . . , 63539, 63719,63899, 64079, 64259, 64439, 64619, 64799.

Hereinafter, the interleaving operation of the block interleaver 124will be explained in detail.

The block interleaver 124 may interleave by writing a plurality of bitgroups in each column in bit group wise in a column direction, andreading each row of the plurality of columns in which the plurality ofbit groups are written in bit group wise in a row direction.

In this case, the number of columns constituting the block interleaver124 may vary according to a modulation method, and the number of rowsmay be the length of the LDPC codeword/the number of columns.

For example, when the modulation method is 16-QAM, the block interleaver124 may be formed of 4 columns. In this case, when the length N_(ldpc)of the LDPC codeword is 16200, the number of rows is 16200 (=64800/4).In another example, when the modulation method is 64-QAM, the blockinterleaver 124 may be formed of 6 columns. In this case, when thelength N_(ldpc) of the LDPC codeword is 64800, the number of rows is10800 (=64800/6).

Hereinafter, the method for interleaving the plurality of bit groups inbit group wise by the block interleaver 124 will be explained in detail.

When the number of bit groups constituting the LDPC codeword is aninteger multiple of the number of columns, the block interleaver 124 mayinterleave by writing the bit groups as many as the number of bit groupsdivided by the number of columns in each column serially in bit groupwise.

For example, when the modulation method is 16-QAM and the lengthN_(ldpc) of the LDPC codeword is 64800, the block interleaver 124 may beformed of four (4) columns each including 16200 rows. In this case,since the LDPC codeword is divided into (64800/360=180) number of bitgroups when the length N_(ldpc) of the LDPC codeword is 64800, thenumber of bit groups (=180) of the LDPC codeword may be an integermultiple of the number of columns (=4) when the modulation method is16-QAM. That is, no remainder is generated when the number of bit groupsof the LDPC codeword is divided by the number of columns.

In this case, as shown in FIG. 31, the block interleaver 124 writes thebits included in each of the bit group Y₀, bit group Y₁, . . . , bitgroup Y₄₄ in the 1^(st) row to 16200^(th) row of the first column,writes the bits included in each of the bit group Y₄₅, the bit groupY₄₆, . . . , the bit group Y₈₉ in the 1^(st) row to 16200^(th) row ofthe second column, writes the bits included in each of the bit groupY₉₀, the bit group Y₉₁, . . . , the bit group Y₁₃₄ in the 1^(st) row to16200^(th) row of the third column, and writes the bits included in eachof the bit group Y₁₃₅, the bit group Y₁₃₆, . . . , the bit group Y₁₇₉ inthe 1^(st) row to 16200^(th) row of the fourth column. In addition, theblock interleaver 124 may read the bits written in each row of the twocolumns serially in the row direction.

In another, when the modulation method is 64-QAM and the length N_(ldpc)of the LDPC codeword is 64800, the block interleaver 124 may be formedof six (6) columns each including 10800 rows. In this case, since theLDPC codeword is divided into (64800/360=180) number of bit groups whenthe length N_(ldpc) of the LDPC codeword is 64800, the number of bitgroups (=180) of the LDPC codeword may be an integer multiple of thenumber of columns (=4) when the modulation method is 64-QAM. That is, noremainder is generated when the number of bit groups of the LDPCcodeword is divided by the number of columns.

In this case, as shown in FIG. 32, the block interleaver 124 writes thebits included in each of the bit group Y₀, bit group Y₁, . . . , bitgroup Y₂₉ in the 1^(st) row to 10800^(th) row of the first column,writes the bits included in each of the bit group Y₃₀, the bit groupY₃₁, . . . , the bit group Y₅₉ in the 1^(st) row to 10800^(th) row ofthe second column, writes the bits included in each of the bit groupY₆₀, the bit group Y₆₁, . . . , the bit group Y₈₉ in the 1^(st) row to10800^(th) row of the third column, writes the bits included in each ofthe bit group Y₉₀, the bit group Y₉₁, . . . , the bit group Y₁₁₉ in the1^(st) row to 10800^(th) row of the fourth column, writes the bitsincluded in each of the bit group Y₁₂₀, the bit group Y₁₂₁, . . . , thebit group Y₁₄₉ in the 1^(st) row to 10800^(th) row of the fifth column,and writes the bits included in each of the bit group Y₁₅₀, the bitgroup Y₁₅₁, . . . , the bit group Y₁₇₉ in the 1^(st) row to 10800^(th)row of the sixth column. In addition, the block interleaver 124 may readthe bits written in each row of the two columns serially in the rowdirection.

As described above, when the number of bit groups constituting the LDPCcodeword is an integer multiple of the number of columns of the blockinterleaver 124, the block interleaver 124 may interleave the pluralityof bit groups in bit group wise, and accordingly, the bits belonging tothe same bit group may be written in the same column.

As described above, the block interleaver 124 may interleave theplurality of bit groups of the LDPC codeword in the method describedabove with reference to FIGS. 31 and 32.

The modulator 130 maps the interleaved LDPC codeword onto a modulationsymbol. Specifically, the modulator 130 may demultiplex the interleavedLDPC codeword, modulate the demultiplexed LDPC codeword, and map theLDPC codeword onto a constellation.

In this case, the modulator 130 may generate a modulation symbol usingthe bits included in each of a plurality of bit groups.

In other words, as described above, the bits included in different bitgroups are written in each column of the block interleaver 124, and theblock interleaver 124 reads the bits written in each column in the rowdirection. In this case, the modulator 130 generates a modulation symbolby mapping the bits read in each column onto each bit of the modulationsymbol. Accordingly, each bit of the modulation symbol belongs to adifferent bit group.

For example, it is assumed that the modulation symbol consists of Cnumber of bits. In this case, the bits which are read from each row of Cnumber of columns of the block interleaver 124 may be mapped onto eachbit of the modulation symbol and thus, each bit of the modulation symbolconsisting of C number of bits belong to C number of different bitgroups.

Hereinbelow, the above feature will be described in greater detail.

First, the modulator 130 demultiplexes the interleaved LDPC codeword. Toachieve this, the modulator 130 may include a demultiplexer (not shown)to demultiplex the interleaved LDPC codeword.

The demultiplexer (not shown) demultiplexes the interleaved LDPCcodeword. Specifically, the demultiplexer (not shown) performsserial-to-parallel conversion with respect to the interleaved LDPCcodeword, and demultiplexes the interleaved LDPC codeword into a cellhaving a predetermined number of bits (or a data cell).

For example, as shown in FIG. 33, the demultiplexer (not shown) receivesthe LDPC codeword Q=(q₀, q₁, q₂, . . . ) output from the interleaver120, outputs the received LDPC codeword bits to a plurality ofsubstreams serially, converts the input LDPC codeword bits into cells,and outputs the cells.

In this case, the bits having the same index in each of the plurality ofsubstreams may constitute the same cell. Accordingly, the cells may beconfigured like (y_(0,0), y_(1,0), . . . , y_(ηMOD−1,0))=(q₀, q₁,q_(ηMOD−1)), (y_(0,1), y_(1,1), . . . , y_(ηMOD−1,1))=(q_(ηMOD),q_(ηMOD+1), . . . , q_(ηMOD−1)), . . . .

Herein, the number of substreams, N_(substreams), may be equal to thenumber of bits constituting a modulation symbol, η_(MOD). Accordingly,the number of bits constituting each cell may be equal to the number ofbits constituting a modulation symbol (that is, a modulationorder).

For example, when the modulation method is 16-QAM, the number of bitsconstituting the modulation symbol, η_(MOD), is 4 and thus the number ofsub streams, N_(substreams), is 4, and the cells may be configured like(y_(0,0), y_(1,0), y_(2,0), y_(3,0))=(q₀, q₁, q₂, q₃), (y_(0,1),y_(1,1), y_(2,1), y_(3,1))=(q₄, q₅, q₆, q₇), (y_(0,2), Y_(1,2), Y_(2,2),Y_(3,2))=(q₈, q₉, q₁₀, q₁₁), . . . .

In another example, when the modulation method is 64-QAM, the number ofbits constituting the modulation symbol, η_(MOD), is 6 and thus thenumber of sub streams, N_(substreams), is 6, and the cells may beconfigured like (y_(0,0), y_(1,0), y_(2,0), y_(3,0), y_(4,0),y_(5,0))=(q₀, q₁, q₂, q₃, q₄, q₅), (y_(0,1), y_(1,1), Y_(2,1), y_(3,1),y_(4,1), Y_(5,1))=(q₆, q₇, q₈, q₉, q₁₀, q₁₁), (y_(0,2), Y_(1,2),y_(2,2), y_(3,2), y_(4,2), Y_(5,2))=(q₁₂, q₁₃, q₁₄, q₁₅, q₁₆, q₁₇), . .. .

The modulator 130 may map the demultiplexed LDPC codeword ontomodulation symbols.

Specifically, the modulator 130 may modulate bits (that is, cells)output from the demultiplexer (not shown) in various modulation methodssuch as Quadrature Phase Shift Keying (QPSK), 16-QAM, 64-QAM, 256-QAM,1024-QAM, 4096-QAM, etc. For example, when the modulation method isQPSK, 16-QAM, 64-QAM, 256-QAM, 1024-QAM, and 4096-QAM, the number ofbits constituting the modulation symbol, η_(MOD) (that is, themodulation order), may be 2, 4, 6, 8, 10 and 12, respectively.

In this case, since each cell output from the demultiplexer (not shown)is formed of as many bits as the number of bits constituting themodulation symbol, the modulator 130 may generate the modulation symbolby mapping each cell output from the demultiplexer (not shown) onto aconstellation point serially. Herein, the modulation symbol correspondsto a constellation point on the constellation.

However, the above-described demultiplexer (not shown) may be omittedaccording to circumstances. In this case, the modulator 130 may generatemodulation symbols by grouping a predetermined number of bits frominterleaved bits serially and mapping the predetermined number of bitsonto constellation points. In this case, the modulator 130 may generatethe modulation symbols by mapping η_(MOD) number of bits onto theconstellation points serially according to a modulation method.

The modulator 130 may modulate by mapping cells output from thedemultiplexer (not shown) onto constellation points in a non-uniformconstellation (NUC) method.

In the non-uniform constellation method, once a constellation point ofthe first quadrant is defined, constellation points in the other threequadrants may be determined as follows. For example, when a set ofconstellation points defined for the first quadrant is X, the setbecomes −conj(X) in the case of the second quadrant, becomes conj(X) inthe case of the third quadrant, and becomes −(X) in the case of thefourth quadrant.

That is, once the first quadrant is defined, the other quadrants may beexpressed as follows:

1 Quarter (first quadrant)=X

2 Quarter (second quadrant)=−conj(X)

3 Quarter (third quadrant)=conj(X)

4 Quarter (fourth quadrant)=−X

Specifically, when the non-uniform M-QAM is used, M number ofconstellation points may be defined as z={z₀, z₁ . . . , z_(M-1)}. Inthis case, when the constellation points existing in the first quadrantare defined as {x₀, x₁, x₂, . . . , x_(M/4-1)}, z may be defined asfollows:

from z₀ to z_(M/4-1)=from x₀ to X_(M/4)

from z_(M/4) to z_(2×M/4-1)=−conj (from x₀ to x_(M/4))

from z_(2×M/4) to z_(3×M/4-1)=conj (from x₀ to x_(M/4))

from z_(3×M/4) to z_(4×M/4-1)=−(from x₀ to x_(M/4))

Accordingly, the modulator 130 may map the bits [y₀, . . . , y_(m-1)]output from the demultiplexer (not shown) onto constellation points inthe non-uniform constellation method by mapping the output bits ontoz_(L) having an index of

$L = {\sum\limits_{i = 0}^{m - 1}{\left( {y_{1} \times 2^{m - 1}} \right).}}$An example of the constellation defined according to the non-uniformconstellation method may be expressed as in tables 26 to 30 presentedbelow when the code rate is 5/15, 7/15, 9/15, 11/15, 13/15:

TABLE 26 Input data cell y Constellation point z_(s) (00) (1 +1i)/√{square root over (2)} (01) (1 − 1i)/√{square root over (2)} (10)(−1 + 1i)/√{square root over (2)} (11) (−1 − 1i)/√{square root over (2)}

TABLE 27 w/Shape NUC_16_6/15 NUC_16_7/15 NUC_16_8/15 NUC_16_9/15NUC_16_10/15 w0 0.4530 + 0.2663i 1.2103 + 0.5026i 0.4819 + 0.2575i0.4909 + 1.2007i 0.2173 + 0.4189i w1 0.2663 + 0.4530i 0.5014 + 1.2103i0.2575 + 0.4819i 1.2007 + 0.4909i 0.6578 + 0.2571i w2 1.2092 + 0.5115i0.4634 + 0.2624i 1.2068 + 0.4951i 0.2476 + 0.5065i 0.4326 + 1.1445i w30.5115 + 1.2092i 0.2624 + 0.4627i 0.4951 + 1.2068i 0.5053 + 0.2476i1.2088 + 0.5659i w/Shape NUC_16_11/15 NUC_16_12/15 NUC_16_13/15 w00.9583 + 0.9547i 0.2999 + 0.2999i 0.9517 + 0.9511i w1 0.9547 + 0.2909i0.9540 + 0.2999i 0.9524 + 0.3061i w2 0.2921 + 0.9583i 0.2999 + 0.9540i0.3067 + 0.9524i w3 0.2909 + 0.2927i 0.9540 + 0.9540i 0.3061 + 0.3067i

TABLE 28 x/Shape R64_6/15 R64_7/15 R64_8/15 R64_9/15 R64_10/15 x00.4387 + 1.6023i 0.3352 + 0.6028i 1.4827 + 0.2920i 0.3547 + 0.6149i1.4388 + 0.2878i x1 1.6023 + 0.4387i 0.2077 + 0.6584i 1.2563 + 0.8411i0.1581 + 0.6842i 1.2150 + 0.8133i x2 0.8753 + 1.0881i 0.1711 + 0.3028i1.0211 + 0.2174i 0.1567 + 0.2749i 1.0386 + 0.2219i x3 1.0881 + 0.8753i0.1556 + 0.3035i 0.8798 + 0.5702i 0.1336 + 0.2700i 0.8494 + 0.6145i x40.2202 + 0.9238i 0.6028 + 0.3345i 0.2920 + 1.4827i 0.6177 + 0.4030i0.2931 + 1.4656i x5 0.2019 + 0.7818i 0.6577 + 0.2084i 0.8410 + 1.2563i0.7262 + 0.1756i 0.8230 + 1.2278i x6 0.3049 + 0.8454i 0.3021 + 0.1711i0.2174 + 1.0211i 0.3568 + 0.1756i 0.2069 + 1.0649i x7 0.2653 + 0.7540i0.3028 + 0.1556i 0.5702 + 0.8798i 0.3771 + 0.1336i 0.5677 + 0.8971i x80.7818 + 0.2019i 0.5556 + 0.8922i 0.3040 + 0.1475i 0.5639 + 0.8864i0.4119 + 0.1177i x9 0.9238 + 0.2202i 0.2352 + 1.0190i 0.3028 + 0.1691i0.1980 + 1.0277i 0.3998 + 0.2516i x10 0.7540 + 0.2653i 0.8450 + 1.2619i0.6855 + 0.1871i 0.8199 + 1.2515i 0.7442 + 0.1559i x11 0.8454 + 0.3049i0.2922 + 1.4894i 0.6126 + 0.3563i 0.2854 + 1.4691i 0.5954 + 0.4328i x120.2675 + 0.2479i 0.8929 + 0.5549i 0.1475 + 0.3040i 0.8654 + 0.6058i0.1166 + 0.1678i x13 0.2479 + 0.2675i 1.0197 + 0.2359i 0.1691 + 0.3028i1.0382 + 0.2141i 0.1582 + 0.3325i x14 0.2890 + 0.2701i 1.2626 + 0.8457i0.1871 + 0.6855i 1.2362 + 0.8416i 0.1355 + 0.7408i x15 0.2701 + 0.2890i1.4894 + 0.2922i 0.3563 + 0.6126i 1.4663 + 0.2973i 0.3227 + 0.6200ix/Shape R64_11/15 R64_12/15 E64_13/15 x0 0.3317 + 0.6970i 1.0854 +0.5394i 0.4108 + 0.7473i x1 0.1386 + 0.8824i 0.7353 + 0.4623i 0.1343 +0.5338i x2 0.1323 + 0.4437i 1.0474 + 0.1695i 0.1570 + 0.9240i x30.1015 + 0.1372i 0.7243 + 0.1504i 0.1230 + 0.1605i x4 0.5682 + 0.4500i1.0693 + 0.9408i 0.6285 + 0.4617i x5 0.6739 + 0.1435i 0.7092 + 0.8073i0.3648 + 0.3966i x6 0.3597 + 0.3401i 1.4261 + 0.2216i 0.6907 + 0.1541ix7 0.3660 + 0.1204i 0.6106 + 1.1783i 0.3994 + 0.1308i x8 0.6004 +0.8922i 0.1392 + 0.4078i 0.7268 + 0.8208i x9 0.2120 + 1.2253i 0.4262 +0.4205i 1.0463 + 0.9495i x10 0.9594 + 1.0714i 0.1407 + 0.1336i 0.1866 +1.2733i x11 0.5829 + 1.3995i 0.4265 + 0.1388i 0.5507 + 1.1793i x120.8439 + 0.5675i 0.1388 + 0.7057i 0.9283 + 0.5140i x13 0.9769 + 0.1959i0.4197 + 0.7206i 1.2648 + 0.5826i x14 1.2239 + 0.6760i 0.1682 + 1.0316i0.9976 + 0.1718i x15 1.3653 + 0.2323i 0.2287 + 1.3914i 1.3412 + 0.1944i

TABLE 29 w/Shape NUC_64_6/15 NUC_64_7/15 NUC_64_8/15 NUC_64_9/15NUC_64_10/15 w0 0.4387 + 1.6023i 0.3352 + 0.6028i 1.4827 + 0.2920i0.3547 + 0.6149i 1.4388 + 0.2878i w1 1.6023 + 0.4387i 0.2077 + 0.6584i1.2563 + 0.8411i 0.1581 + 0.6842i 1.2150 + 0.8133i w2 0.8753 + 1.0881i0.1711 + 0.3028i 1.0211 + 0.2174i 0.1567 + 0.2749i 1.0386 + 0.2219i w31.0881 + 0.8753i 0.1556 + 0.3035i 0.8798 + 0.5702i 0.1336 + 0.2700i0.8494 + 0.6145i w4 0.2202 + 0.9238i 0.6028 + 0.3345i 0.2920 + 1.4827i0.6177 + 0.4030i 0.2931 + 1.4656i w5 0.2019 + 0.7818i 0.6577 + 0.2084i0.8410 + 1.2563i 0.7262 + 0.1756i 0.8230 + 1.2278i w6 0.3049 + 0.8454i0.3021 + 0.1711i 0.2174 + 1.0211i 0.3568 + 0.1756i 0.2069 + 1.0649i w70.2653 + 0.7540i 0.3028 + 0.1556i 0.5702 + 0.8798i 0.3771 + 0.1336i0.5677 + 0.8971i w8 0.7818 + 0.2019i 0.5556 + 0.8922i 0.3040 + 0.1475i0.5639 + 0.8864i 0.4119 + 0.1177i w9 0.9238 + 0.2202i 0.2352 + 1.0190i0.3028 + 0.1691i 0.1980 + 1.0277i 0.3998 + 0.2516i w10 0.7540 + 0.2653i0.8450 + 1.2619i 0.6855 + 0.1871i 0.8199 + 1.2515i 0.7442 + 0.1559i w110.8454 + 0.3049i 0.2922 + 1.4894i 0.6126 + 0.3563i 0.2854 + 1.4691i0.5954 + 0.4328i w12 0.2675 + 0.2479i 0.8929 + 0.5549i 0.1475 + 0.3040i0.8654 + 0.6058i 0.1166 + 0.1678i w13 0.2479 + 0.2675i 1.0197 + 0.2359i0.1691 + 0.3028i 1.0382 + 0.2141i 0.1582 + 0.3325i w14 0.2890 + 0.2701i1.2626 + 0.8457i 0.1871 + 0.6855i 1.2362 + 0.8416i 0.1355 + 0.7408i w150.2701 + 0.2890i 1.4894 + 0.2922i 0.3563 + 0.6126i 1.4663 + 0.2973i0.3227 + 0.6200i w/Shape NUC_64_11/15 NUC_64_12/15 NUC_64_13/15 w00.3317 + 0.6970i 1.0854 + 0.5394i 0.8624 + 1.1715i  w1 0.1386 + 0.8824i0.7353 + 0.4623i 1.1184 + 0.8462i  w2 0.1323 + 0.4437i 1.0474 + 0.1695i0.2113 + 1.3843i  w3 0.1015 + 0.1372i 0.7243 + 0.1504i 0.7635 + 0.7707i w4 0.5682 + 0.4500i 1.0693 + 0.9408i 1.1796 + 0.1661i  w5 0.6739 +0.1435i 0.7092 + 0.8073i 1.0895 + 0.4882i  w6 0.3597 + 0.3401i 1.4261 +0.2216i 0.8101 + 0.1492i  w7 0.3660 + 0.1204i 0.6106 + 1.1783i 0.7482 +0.4477i  w8 0.6004 + 0.8922i 0.1392 + 0.4078i 0.1524 + 0.9943i  w90.2120 + 1.2253i 0.4262 + 0.4205i 0.1482 + 0.6877i  w10 0.9594 + 1.0714i0.1407 + 0.1336i 0.4692 + 1.0853i  w11 0.5829 + 1.3995i 0.4265 + 0.1388i0.4492 + 0.07353i w12 0.8439 + 0.5675i 0.1388 + 0.7057i 0.1578 +0.1319i  w13 0.9769 + 0.1959i 0.4197 + 0.7206i 0.1458 + 0.4025i  w141.2239 + 0.6760i 0.1682 + 1.0316i 0.4763 + 0.1407i  w15 1.3653 + 0.2323i0.2287 + 1.3914i 0.4411 + 0.4267i 

TABLE 30 w/Shape NUC_256_6/15 NUC_256_7/15 NUC_256_8/15 NUC_256_9/15NUC_256_10/15 w0 0.6800 + 1.6926i 1.2905 + 1.3099i 1.0804 + 1.3788i1.3231 + 1.1506i 1.6097 + 0.1548i w1 0.3911 + 1.3645i 1.0504 + 0.9577i1.0487 + 0.9862i 0.9851 + 1.2311i 1.5549 + 0.4605i w2 0.2191 + 1.7524i1.5329 + 0.8935i 1.6464 + 0.7428i 1.1439 + 0.8974i 1.3226 + 0.1290i w30.2274 + 1.4208i 1.1577 + 0.8116i 1.3245 + 0.9414i 0.9343 + 0.9271i1.2772 + 0.3829i w4 0.8678 + 1.2487i 1.7881 + 0.2509i 0.7198 + 1.2427i1.5398 + 0.7962i 1.2753 + 1.0242i w5 0.7275 + 1.1667i 1.4275 + 0.1400i0.8106 + 1.0040i 0.9092 + 0.5599i 1.4434 + 0.7540i w6 0.8747 + 1.0470i1.4784 + 0.5201i 0.5595 + 1.0317i 1.2222 + 0.6574i 1.0491 + 0.8476i w70.7930 + 1.0406i 1.3408 + 0.4346i 0.6118 + 0.9722i 0.9579 + 0.6373i1.1861 + 0.6253i w8 0.2098 + 0.9768i 0.7837 + 0.5867i 1.6768 + 0.2002i0.7748 + 1.5867i 0.9326 + 0.0970i w9 0.2241 + 1.0454i 0.8250 + 0.6455i0.9997 + 0.6844i 0.6876 + 1.2489i 0.8962 + 0.2804i w10 0.1858 + 0.9878i0.8256 + 0.5601i 1.4212 + 0.4769i 0.5992 + 0.9208i 1.1044 + 0.1102i w110.1901 + 1.0659i 0.8777 + 0.6110i 1.1479 + 0.6312i 0.6796 + 0.9743i1.0648 + 0.3267i w12 0.5547 + 0.8312i 1.0080 + 0.1843i 0.6079 + 0.6566i0.5836 + 0.5879i 0.7325 + 0.6071i w13 0.5479 + 0.8651i 1.0759 + 0.1721i0.7284 + 0.6957i 0.6915 + 0.5769i 0.8260 + 0.4559i w14 0.6073 + 0.8182i1.0056 + 0.2758i 0.5724 + 0.7031i 0.5858 + 0.7058i 0.8744 + 0.7153i w150.5955 + 0.8420i 1.0662 + 0.2964i 0.6302 + 0.7259i 0.6868 + 0.6793i0.9882 + 0.5300i w16 1.4070 + 0.1790i 0.8334 + 1.5554i 0.1457 + 1.4010i1.6118 + 0.1497i 0.1646 + 1.6407i w17 1.7227 + 0.2900i 0.8165 + 1.1092i0.1866 + 1.7346i 0.9511 + 0.1140i 0.4867 + 1.5743i w18 1.3246 + 0.2562i0.6092 + 1.2729i 0.1174 + 1.1035i 1.2970 + 0.1234i 0.1363 + 1.3579i w191.3636 + 0.3654i 0.6728 + 1.1456i 0.1095 + 1.0132i 1.0266 + 0.1191i0.4023 + 1.3026i w20 1.3708 + 1.2834i 0.3061 + 1.7469i 0.4357 + 1.3636i1.5831 + 0.4496i 1.0542 + 1.2584i w21 1.6701 + 0.8403i 0.1327 + 1.4056i0.5853 + 1.6820i 0.9328 + 0.3586i 0.7875 + 1.4450i w22 1.1614 + 0.7909i0.3522 + 1.3414i 0.3439 + 1.0689i 1.2796 + 0.3894i 0.8687 + 1.0407i w231.2241 + 0.7367i 0.2273 + 1.3081i 0.3234 + 0.9962i 1.0188 + 0.3447i0.6502 + 1.1951i w24 0.9769 + 0.1863i 0.5007 + 0.8098i 0.1092 + 0.6174i0.5940 + 0.1059i 0.0982 + 0.9745i w25 0.9452 + 0.2057i 0.5528 + 0.8347i0.1074 + 0.6307i 0.7215 + 0.1100i 0.2842 + 0.9344i w26 1.0100 + 0.2182i0.4843 + 0.8486i 0.1109 + 0.6996i 0.5863 + 0.1138i 0.1142 + 1.1448i w270.9795 + 0.2417i 0.5304 + 0.8759i 0.1076 + 0.7345i 0.6909 + 0.1166i0.3385 + 1.0973i w28 0.8241 + 0.4856i 0.1715 + 0.9147i 0.3291 + 0.6264i0.5843 + 0.3604i 0.6062 + 0.7465i w29 0.8232 + 0.4837i 0.1540 + 0.9510i0.3126 + 0.6373i 0.6970 + 0.3592i 0.4607 + 0.8538i w30 0.8799 + 0.5391i0.1964 + 0.9438i 0.3392 + 0.6999i 0.5808 + 0.3250i 0.7263 + 0.8764i w310.8796 + 0.5356i 0.1788 + 0.9832i 0.3202 + 0.7282i 0.6678 + 0.3290i0.5450 + 1.0067i w32 0.1376 + 0.3342i 0.3752 + 0.1667i 0.9652 + 0.1066i0.1406 + 1.6182i 0.2655 + 0.0746i w33 0.1383 + 0.3292i 0.3734 + 0.1667i0.9075 + 0.1666i 0.1272 + 1.2984i 0.2664 + 0.0759i w34 0.1363 + 0.3322i0.3758 + 0.1661i 0.9724 + 0.1171i 0.1211 + 0.9644i 0.4571 + 0.0852i w350.1370 + 0.3273i 0.3746 + 0.1649i 0.9186 + 0.1752i 0.1220 + 1.0393i0.4516 + 0.1062i w36 0.1655 + 0.3265i 0.4013 + 0.1230i 0.6342 + 0.1372i0.1124 + 0.6101i 0.2559 + 0.1790i w37 0.1656 + 0.3227i 0.4001 + 0.1230i0.6550 + 0.1495i 0.1177 + 0.6041i 0.2586 + 0.1772i w38 0.1634 + 0.3246i0.4037 + 0.1230i 0.6290 + 0.1393i 0.1136 + 0.7455i 0.3592 + 0.2811i w390.1636 + 0.3208i 0.4019 + 0.1218i 0.6494 + 0.1504i 0.1185 + 0.7160i0.3728 + 0.2654i w40 0.1779 + 0.6841i 0.6025 + 0.3934i 1.3127 + 0.1240i0.4324 + 1.5679i 0.7706 + 0.0922i w41 0.1828 + 0.6845i 0.5946 + 0.3928i0.9572 + 0.4344i 0.3984 + 1.2825i 0.7407 + 0.2260i w42 0.1745 + 0.6828i0.6116 + 0.3879i 1.2403 + 0.2631i 0.3766 + 0.9534i 0.6180 + 0.0927i w430.1793 + 0.6829i 0.6019 + 0.3837i 1.0254 + 0.4130i 0.3668 + 1.0301i0.6019 + 0.1658i w44 0.3547 + 0.6009i 0.7377 + 0.1618i 0.6096 + 0.4214i0.3667 + 0.5995i 0.6007 + 0.4980i w45 0.3593 + 0.6011i 0.7298 + 0.1582i0.6773 + 0.4284i 0.3328 + 0.5960i 0.6673 + 0.3928i w46 0.3576 + 0.5990i0.7274 + 0.1782i 0.5995 + 0.4102i 0.3687 + 0.7194i 0.4786 + 0.3935i w470.3624 + 0.5994i 0.7165 + 0.1746i 0.6531 + 0.4101i 0.3373 + 0.6964i0.5176 + 0.3391i w48 0.2697 + 0.1443i 0.1509 + 0.2425i 0.1250 + 0.1153i0.1065 + 0.1146i 0.0757 + 0.1003i w49 0.2704 + 0.1433i 0.1503 + 0.2400i0.1252 + 0.1158i 0.1145 + 0.1108i 0.0753 + 0.1004i w50 0.2644 + 0.1442i0.1515 + 0.2437i 0.1245 + 0.1152i 0.1053 + 0.1274i 0.0777 + 0.4788i w510.2650 + 0.1432i 0.1503 + 0.2425i 0.1247 + 0.1156i 0.1134 + 0.1236i0.0867 + 0.4754i w52 0.2763 + 0.1638i 0.1285 + 0.2388i 0.3768 + 0.1244i0.1111 + 0.3821i 0.1023 + 0.2243i w53 0.2768 + 0.1626i 0.1279 + 0.2419i0.3707 + 0.1237i 0.1186 + 0.3867i 0.1010 + 0.2242i w54 0.2715 + 0.1630i0.1279 + 0.2431i 0.3779 + 0.1260i 0.1080 + 0.3431i 0.1950 + 0.3919i w550.2719 + 0.1618i 0.1279 + 0.2406i 0.3717 + 0.1252i 0.1177 + 0.3459i0.1881 + 0.3969i w56 0.6488 + 0.1696i 0.3394 + 0.5764i 0.1161 + 0.3693i0.3644 + 0.1080i 0.0930 + 0.8122i w57 0.6462 + 0.1706i 0.3364 + 0.5722i0.1157 + 0.3645i 0.3262 + 0.1104i 0.2215 + 0.7840i w58 0.6456 + 0.1745i0.3328 + 0.5758i 0.1176 + 0.3469i 0.3681 + 0.1173i 0.0937 + 0.6514i w590.6431 + 0.1753i 0.3303 + 0.5698i 0.1171 + 0.3424i 0.3289 + 0.1196i0.1540 + 0.6366i w60 0.5854 + 0.3186i 0.1491 + 0.6316i 0.3530 + 0.3899i0.3665 + 0.3758i 0.4810 + 0.6306i w61 0.5862 + 0.3167i 0.1461 + 0.6280i0.3422 + 0.3808i 0.3310 + 0.3795i 0.3856 + 0.7037i w62 0.5864 + 0.3275i0.1509 + 0.6280i 0.3614 + 0.3755i 0.3672 + 0.3353i 0.3527 + 0.5230i w630.5873 + 0.3254i 0.1473 + 0.6225i 0.3509 + 0.3656i 0.3336 + 0.3402i0.3100 + 0.5559i w/Shape NUC_256_11/15 NUC_256_12/15 NUC_256_13/15 w00.3105 + 0.3382i 1.1014 + 1.1670i 0.3556 + 0.3497i w1 0.4342 + 0.3360i0.8557 + 1.2421i 0.3579 + 0.4945i w2 0.3149 + 0.4829i 1.2957 + 0.8039i0.5049 + 0.3571i w3 0.4400 + 0.4807i 1.0881 + 0.8956i 0.5056 + 0.5063iw4 0.1811 + 0.3375i 0.5795 + 1.2110i 0.2123 + 0.3497i w5 0.0633 +0.3404i 0.6637 + 1.4215i 0.2116 + 0.4900i w6 0.1818 + 0.4851i 0.6930 +1.0082i 0.0713 + 0.3489i w7 0.0633 + 0.4815i 0.8849 + 0.9647i 0.0690 +0.4960i w8 0.3084 + 0.1971i 1.2063 + 0.5115i 0.3527 + 0.2086i w90.4356 + 0.1993i 1.0059 + 0.4952i 0.3497 + 0.0713i w10 0.3098 + 0.0676i1.4171 + 0.5901i 0.4960 + 0.2123i w11 0.4342 + 0.0691i 1.0466 + 0.6935i0.4974 + 0.0698i w12 0.1775 + 0.1985i 0.6639 + 0.6286i 0.2086 + 0.2079iw13 0.0640 + 0.1978i 0.8353 + 0.5851i 0.2094 + 0.0690i w14 0.1775 +0.0676i 0.6879 + 0.8022i 0.0676 + 0.2079i w15 0.0647 + 0.0669i 0.8634 +0.7622i 0.0698 + 0.0683i w16 0.7455 + 0.3411i 0.1213 + 1.4366i 0.3586 +0.7959i w17 0.5811 + 0.3396i 0.1077 + 1.2098i 0.3571 + 0.6392i w180.7556 + 0.4669i 0.0651 + 0.9801i 0.5034 + 0.8271i w19 0.5862 + 0.4756i0.2009 + 1.0115i 0.5063 + 0.6600i w20 0.9556 + 0.3280i 0.3764 + 1.4264i0.2146 + 0.7862i w21 1.1767 + 0.3091i 0.3237 + 1.2130i 0.2109 + 0.6340iw22 0.9673 + 0.4720i 0.5205 + 0.9814i 0.0713 + 0.8093i w23 1.2051 +0.5135i 0.3615 + 1.0163i 0.0698 + 0.6467i w24 0.7367 + 0.2015i 0.0715 +0.6596i 0.2799 + 1.0862i w25 0.5811 + 0.2015i 0.2116 + 0.6597i 0.2806 +1.2755i w26 0.7316 + 0.0669i 0.0729 + 0.8131i 0.4328 + 0.9904i w270.5782 + 0.0669i 0.2158 + 0.8246i 0.4551 + 1.1812i w28 0.9062 + 0.1971i0.5036 + 0.6467i 0.2309 + 0.9414i w29 1.2829 + 0.1185i 0.3526 + 0.6572i0.1077 + 1.3891i w30 0.9156 + 0.0735i 0.5185 + 0.8086i 0.0772 + 0.9852iw31 1.1011 + 0.0735i 0.3593 + 0.8245i 0.0802 + 1.1753i w32 0.3244 +0.8044i 1.2545 + 0.1010i 0.8301 + 0.3727i w33 0.4589 + 0.8218i 1.0676 +0.0956i 0.8256 + 0.5256i w34 0.3207 + 0.6415i 1.4782 + 0.1167i 0.6593 +0.3668i w35 0.4509 + 0.6371i 0.8981 + 0.0882i 0.6623 + 0.5182i w360.1920 + 0.8196i 0.5518 + 0.0690i 1.0186 + 0.3645i w37 0.0633 + 0.8167i0.6903 + 0.0552i 1.0001 + 0.5242i w38 0.1811 + 0.6371i 0.5742 + 0.1987i1.1857 + 0.2725i w39 0.0640 + 0.6415i 0.7374 + 0.1564i 1.3928 + 0.3408iw40 0.3331 + 1.0669i 1.2378 + 0.3049i 0.8011 + 0.2227i w41 0.4655 +1.0087i 1.0518 + 0.3032i 0.7981 + 0.0735i w42 0.3433 + 1.2865i 1.4584 +0.3511i 0.6459 + 0.2198i w43 0.5004 + 1.5062i 0.9107 + 0.2603i 0.6430 +0.0713i w44 0.1971 + 1.0051i 0.6321 + 0.4729i 0.9681 + 0.2205i w450.0735 + 1.0298i 0.7880 + 0.4392i 0.9615 + 0.0735i w46 0.1498 + 1.5018i0.6045 + 0.3274i 1.3327 + 0.1039i w47 0.0865 + 1.2553i 0.7629 + 0.2965i1.1359 + 0.0809i w48 0.7811 + 0.8080i 0.0596 + 0.0739i 0.8382 + 0.8709iw49 0.6167 + 0.8153i 0.1767 + 0.0731i 0.8145 + 0.6934i w50 0.7636 +0.6255i 0.0612 + 0.2198i 0.6645 + 0.8486i w51 0.6000 + 0.6327i 0.1815 +0.2192i 0.6600 + 0.6786i w52 0.9898 + 0.7680i 0.4218 + 0.0715i 1.1612 +0.6949i w53 1.5855 + 0.1498i 0.2978 + 0.0725i 0.9785 + 0.6942i w540.9476 + 0.6175i 0.4337 + 0.2115i 1.3698 + 0.6259i w55 1.4625 + 0.4015i0.3057 + 0.2167i 1.2183 + 0.4841i w56 0.8276 + 1.0225i 0.0667 + 0.5124i0.7989 + 1.0498i w57 0.6313 + 1.0364i 0.2008 + 0.5095i 0.4395 + 1.4203iw58 0.8815 + 1.2865i 0.0625 + 0.3658i 0.6118 + 1.0246i w59 0.6342 +1.2705i 0.1899 + 0.3642i 0.6303 + 1.2421i w60 1.0422 + 0.9593i 0.4818 +0.4946i 1.0550 + 0.8924i w61 1.2749 + 0.8538i 0.3380 + 0.5050i 0.8612 +1.2800i w62 1.1556 + 1.1847i 0.4571 + 0.3499i 1.2696 + 0.8969i w631.4771 + 0.6742i 0.3216 + 0.3599i 1.0342 + 1.1181i

Table 26 indicates non-uniform QPSK, table 27 indicates non-uniform16-QAM, Tables 28 and 29 indicate non-uniform 64-QAM, and table 30indicates non-uniform 256-QAM.

Referring to these tables, the constellation point of the first quadrantmay be defined with reference to tables 26 to 30, and the constellationpoints in the other three quadrants may be defined in theabove-described method.

However, this is merely an example and the modulator 130 may map theoutput bits outputted from the demultiplexer (not shown) onto theconstellation points in various methods.

The interleaving is performed in the above-described method for thefollowing reasons.

Specifically, when the LDPC codeword bits are mapped onto the modulationsymbol, the bits may have different reliability (that is, receivingperformance or receiving probability) according to where the bits aremapped onto in the modulation symbol. The LDPC codeword bits may havedifferent codeword characteristics according to the configuration of aparity check matrix. That is, the LDPC codeword bits may have differentcodeword characteristics according to the number of 1 existing in thecolumn of the parity check matrix, that is, the column degree.

Accordingly, the interleaver 120 may interleave to map the LDPC codewordbits having a specific codeword characteristic onto specific bits in themodulation symbol by considering both the codeword characteristics ofthe LDPC codeword bits and the reliability of the bits constituting themodulation symbol.

For example, when the LDPC codeword formed of bit groups X₀ to X₁₇₉ isgroup-interleaved based on Equation 21 and Table 11, the groupinterleaver 122 may output the bit groups in the order of X₅₅, X₁₄₆,X₈₃, . . . , X₁₃₂, X₁₃₅.

In this case, when the modulation method is 16-QAM, the number ofcolumns of the block interleaver 124 is four (4) and each column may beformed of 16200 rows.

Accordingly, from among the 180 groups constituting the LDPC codeword,45 bit groups (X₅₅, X₁₄₆, X₈₃, X₅₂, X₆₂, X₁₇₆, X₁₆₀, X₆₈, X₅₃, X₅₆, X₈₁,X₉₇, X₇₉, X₁₁₃, X₁₆₃, X₆₁, X₅₈, X₆₉, X₁₃₃, X₁₀₈, X₆₆, X₇₁, X₈₆, X₁₄₄,X₅₇, X₆₇, X₁₁₆, X₅₉, X₇₀, X₁₅₆, X₁₇₂, X₆₅, X₁₄₉, X₁₅₅, X₈₂, X₁₃₈, X₁₃₆,X₁₄₁, X₁₁₁, X₉₆, X₁₇₀, X₉₀, X₁₄₀, X₆₄, X₁₅₉) may be inputted to thefirst column of the block interleaver 124, 45 bit groups (X₁₅, X₁₄, X₃₇,X₅₄, X₄₄, X₆₃, X₄₃, X₁₈, X₄₇, X₇, X₂₅, X₃₄, X₂₉, X₃₀, X₂₆, X₃₉, X₁₆,X₄₁, X₄₅, X₃₆, X₀, X₂₃, X₃₂, X₂₈, X₂₇, X₃₈, X₄₈, X₃₃, X₂₂, X₄₉, X₅₁,X₆₀, X₄₆, X₂₁, X₄, X₃, X₂₀, X₁₃, X₅₀, X₃₅, X₂₄, X₄₀, X₁₇, X₄₂, X₆) maybe inputted to the second column of the block interleaver 124, 45 bitgroups (X₁₁₂, X₉₃, X₁₂₇, X₁₀₁, X₉₄, X₁₁₅, X₁₀₅, X₃₁, X₁₉, X₁₇₇, X₇₄,X₁₀, X₁₄₅, X₁₆₂, X₁₀₂, X₁₂₀, X₁₂₆, X₉₅, X₇₃, X₁₅₂, X₁₂₉, X₁₇₄, X₁₂₅,X₇₂, X₁₂₈, X₇₈, X₁₇₁, X₈, X₁₄₂, X₁₇₈, X₁₅₄, X₈₅, X₁₀₇, X₇₅, X₁₂, X₉,X₁₅₁, X₇₇, X₁₁₇, X₁₀₉, X₈₀, X₁₀₆, X₁₃₄, X₉₈, X₁) may be inputted to thethird column of the block interleaver 124, and 45 bit groups (X₁₂₂,X₁₇₃, X₁₆₁, X₁₅₀, X₁₁₀, X₁₇₅, X₁₆₆, X₁₃₁, X₁₁₉, X₁₀₃, X₁₃₉, X₁₄₈, X₁₅₇,X₁₁₄, X₁₄₇, X₈₇, X₁₅₈, X₁₂₁, X₁₆₄, X₁₀₄, X₈₉, X₁₇₉, X₁₂₃, X₁₁₈, X₉₉,X₈₈, X₁₁, X₉₂, X₁₆₅, X₈₄, X₁₆₈, X₁₂₄, X₁₆₉, X₂, X₁₃₀, X₁₆₇, X₁₅₃, X₁₃₇,X₁₄₃, X₉₁, X₁₀₀, X₅, X₇₆, X₁₃₂, X₁₃₅) may be inputted to the fourthcolumn of the block interleaver 124.

In addition, the block interleaver 124 may output the bits inputted tothe 1^(st) row to the last row of each column serially, and the bitsoutputted from the block interleaver 124 may be inputted to themodulator 130 serially. In this case, the demultiplexer (not shown) maybe omitted or the bits may be outputted serially without changing theorder of bits inputted to the demultiplexer (not shown). Accordingly,the bits included in each of the bit groups X₅₅, X₁₅, X₁₁₂, and X₁₂₂ mayconstitute the modulation symbol.

When the modulation method is 64-QAM, the number of columns of the blockinterleaver 124 is six (6) and each column may be formed of 10800 rows.

Accordingly, from among the 180 groups constituting the LDPC codeword,30 bit groups (X₅₅, X₁₄₆, X₈₃, X₅₂, X₆₂, X₁₇₆, X₁₆₀, X₆₈, X₅₃, X₅₆, X₈₁,X₉₇, X₇₉, X₁₁₃, X₁₆₃, X₆₁, X₅₈, X₆₉, X₁₃₃, X₁₀₈, X₆₆, X₇₁, X₈₆, X₁₄₄,X₅₇, X₆₇, X₁₁₆, X₅₉, X₇₀, X₁₅₆) may be inputted to the first column ofthe block interleaver 124, 30 bit groups (X₁₇₂, X₆₅, X₁₄₉, X₁₅₅, X₈₂,X₁₃₈, X₁₃₆, X₁₄₁, X₁₁₁, X₉₆, X₁₇₀, X₉₀, X₁₄₀, X₆₄, X₁₅₉, X₁₅, X₁₄, X₃₇,X₅₄, X₄₄, X₆₃, X₄₃, X₁₈, X₄₇, X₇, X₂₅, X₃₄, X₂₉, X₃₀, X₂₆) may beinputted to the second column of the block interleaver 124, 30 bitgroups (X₃₉, X₁₆, X₄₁, X₄₅, X₃₆, X₀, X₂₃, X₃₂, X₂₈, X₂₇, X₃₈, X₄₈, X₃₃,X₂₂, X₄₉, X₅₁, X₆₀, X₄₆, X₂₁, X₄, X₃, X₂₀, X₁₃, X₅₀, X₃₅, X₂₄, X₄₀, X₁₇,X₄₂, X₆) may be inputted to the third column of the block interleaver124, 30 bit groups (X₁₁₂, X₉₃, X₁₂₇, X₁₀₁, X₉₄, X₁₁₅, X₁₀₅, X₃₁, X₁₉,X₁₇₇, X₇₄, X₁₀, X₁₄₅, X₁₆₂, X₁₀₂, X₁₂₀, X₁₂₆, X₉₅, X₇₃, X₁₅₂, X₁₂₉,X₁₇₄, X₁₂₅, X₇₂, X₁₂₈, X₇₈, X₁₇₁, X₈, X₁₄₂, X₁₇₈) may be inputted to thefourth column of the block interleaver 124, 30 bit groups (X₁₅₄, X₈₅,X₁₀₇, X₇₅, X₁₂, X₉, X₁₅₁, X₇₇, X₁₁₇, X₁₀₉, X₈₀, X₁₀₆, X₁₃₄, X₉₈, X₁,X₁₂₂, X₁₇₃, X₁₆₁, X₁₅₀, X₁₁₀, X₁₇₅, X₁₆₆, X₁₃₁, X₁₁₉, X₁₀₃, X₁₃₉, X₁₄₈,X₁₅₇, X₁₁₄, X₁₄₇) may be inputted to the fifth column of the blockinterleaver 124, and 30 bit groups (X₈₇, X₁₅₈, X₁₂₁, X₁₆₄, X₁₀₄, X₈₉,X₁₇₉, X₁₂₃, X₁₁₈, X₉₉, X₈₈, X₁₁, X₉₂, X₁₆₅, X₈₄, X₁₆₈, X₁₂₄, X₁₆₉, X₂,X₁₃₀, X₁₆₇, X₁₅₃, X₁₃₇, X₁₄₃, X₉₁, X₁₀₀, X₅, X₇₆, X₁₃₂, X₁₃₅) may beinputted to the sixth column of the block interleaver 124.

In addition, the block interleaver 124 may output the bits inputted tothe 1^(st) row to the last row of each column serially, and the bitsoutputted from the block interleaver 124 may be inputted to themodulator 130 serially. In this case, the demultiplexer (not shown) maybe omitted or the bits may be outputted serially without changing theorder of bits inputted to the demultiplexer (not shown). Accordingly,the bits included in each of the bit groups X₅₅, X₁₇₂, X₃₉, X₁₁₂, X₁₅₄,and X₈₇ may constitute the modulation symbol.

As described above, since a specific bit is mapped onto a specific bitin a modulation symbol through interleaving, a receiver side can achievehigh receiving performance and high decoding performance.

That is, when LDPC codeword bits of high decoding performance are mappedonto high reliability bits from among bits of each modulation symbol,the receiver side may show high decoding performance, but there is aproblem that the LDPC codeword bits of the high decoding performance maynot be received. In addition, when the LDPC codeword bits of highdecoding performance are mapped onto low reliability bits from among thebits of the modulation symbol, initial receiving performance isexcellent, and thus, overall performance is also excellent. However,when many bits showing poor decoding performance are received, errorpropagation may occur.

Accordingly, when LDPC codeword bits are mapped onto modulation symbols,an LDPC codeword bit having a specific codeword characteristic is mappedonto a specific bit of a modulation symbol by considering both codewordcharacteristics of the LDPC codeword bits and reliability of the bits ofthe modulation symbol, and is transmitted to the receiver side.Accordingly, the receiver side can achieve high receiving performanceand decoding performance.

Hereinafter, a method for determining π(j), which is a parameter usedfor group interleaving, according to various exemplary embodiments, willbe explained.

According to an exemplary embodiment, when the length of the LDPCcodeword is 64800, the size of the bit group is determined to be 360 andthus 180 bit groups exist. In addition, there may be 180! possibleinterleaving patterns (Herein, factorial means A!=A×(A−1)× . . . ×2×1)regarding an integer A.

In this case, since a reliability level between the bits constituting amodulation symbol may be the same according to a modulationorder, manynumber of interleaving patterns may be regarded as the same interleavingoperation when theoretical performance is considered. For example, whenan MSB bit of the X-axis (or rear part-axis) and an MSB bit the Y-axis(or imaginary part-axis) of a certain modulation symbol have the sametheoretical reliability, the same theoretical performance can beachieved regardless of the way how specific bits are interleaved to bemapped onto the two MSB bits.

However, such a theoretical prediction may become incorrect as a realchannel environment is established. For example, in the case of the QPSKmodulation method, two bits of a symbol in a part of a symmetric channellike an additive white Gaussian noise (AWGN) channel theoretically havethe same reliability. Therefore, there should be no difference in theperformance theoretically when any interleaving method is used. However,in a real channel environment, the performance may be differentdepending on the interleaving method. In the case of a well-knownRayleigh channel which is not a real channel, the performance of QPSKgreatly depends on the interleaving method and thus the performance canbe predicted somewhat only by the reliability between bits of a symbolaccording to a modulation method. However, there should be a limit topredicting the performance.

In addition, since code performance by interleaving may be greatlychanged according to a channel which evaluates performance, channelsshould be always considered to drive an interleaving pattern. Forexample, a good interleaving pattern in the AWGN channel may be not goodin the Rayleigh channel. If a channel environment where a given systemis used is closer to the Rayleigh channel, an interleaving pattern whichis better in the Rayleigh channel than in the AWGN channel may beselected.

As such, not only a specific channel environment but also variouschannel environments considered in a system should be considered inorder to derive a good interleaving pattern. In addition, since there isa limit to predicting real performance only by theoretical performanceprediction, the performance should be evaluated by directly conductingcomputation experiments and then the interleaving pattern should befinally determined.

However, since there are so many number of possible interleavingpatterns to be applied (for example, 180!), reducing the number ofinterleaving patterns used to predict and test performance is animportant factor in designing a high performance interleaver.

Therefore, the interleaver is designed through the following stepsaccording to an exemplary embodiment.

1) Channels C₁, C₂, . . . , C_(k) to be considered by a system aredetermined.

2) A certain interleaver pattern is generated.

3) A theoretical performance value is predicted by applying theinterleaver generated in step 2) to each of the channels determined instep 1). There are various methods for predicting a theoreticalperformance value, but a well-known noise threshold determining methodlike density evolution analysis is used according to an exemplaryembodiment. The noise threshold recited herein refers to a value thatcan be expressed by a minimum necessary signal-to-noise ratio (SNR)capable of error-free transmission on the assumption that a cycle-freecharacteristic is satisfied when the length of a code is infinite andthe code is expressed by the Tanner graph. The density evolutionanalysis may be implemented in various ways, but is not the subjectmatter of the inventive concept and thus a detailed description thereofis omitted.

4) When noise thresholds for the channels are expressed as TH₁[i],TH₂[i], TH_(k)[i] for the i-th generated interleaver, a finaldetermination threshold value may be defined as follows:TH[i]=W ₁ ×TH ₁[i]+W ₂ ×TH ₂[i]+ . . . +W _(k) ×TH _(k)[i],

where W₁+W₂+ . . . +W_(k)=1, W₁, W₂, . . . , W_(k)>0

Here, W₁, W₂, . . . , W_(k) are adjusted according to importance of thechannels. That is, W₁, W₂, . . . , W_(k) are adjusted to a larger valuein a more important channel and W₁, W₂, . . . , W_(k) are adjusted to asmaller value in a less important channel (for example, if the weightvalues of AWGN and Rayleigh channels are W₁ and W₂, respectively, W₁ maybe set to 0.25 and W₂ may be set to 0.75 when one of the channels isdetermined to be more important).

5) B number of interleaver patterns are selected in an ascending orderof TH[i] values from among the tested interleaver patterns and aredirectly tested by conducting performance computation experiments. AnFER level for the test is determined as 10{circumflex over ( )}−3 (forexample, B=100).

6) D number of best interleaver patterns are selected from among the Bnumber of interleaver patterns tested in step 5) (for example, D=5).

In general, an interleaver pattern which has a great SNR gain in thearea of FER=10{circumflex over ( )}−3 may be selected as a goodperformance interleaver in step of 5). However, according to anexemplary embodiment, as shown in FIG. 34, performance of FER requiredin the system based on the result of real computation experiments forthe area of FER=10{circumflex over ( )}−3 may be predicted throughextrapolation, and then an interleaver pattern having good performancein comparison with the expected performance in the FER required in thesystem may be determined as a good interleaver pattern. According to anexemplary embodiment, the extrapolation based on a linear function maybe applied. However, various extrapolation methods may be applied. FIG.34 illustrates an example of performance extrapolation predicted by theresult of computation experiments.

7) The D number of interleaver patterns selected in step 6) are testedby conducting performance computation experiments in each channel.Herein, the FER level for testing is selected as FER required in thesystem (for example, FER=10{circumflex over ( )}6)

8) When an error floor is not observed after the computationexperiments, an interleaving pattern having the greatest SNR gain isdetermined as a final interleaving pattern.

FIG. 35 is a view schematically showing a process of determining Bnumber of interleaver patterns in the steps 2), 3), 4), and 5) of theabove-described method for determining the interleaving pattern in thecase of AWGN and Rayleigh channels for example.

Referring to FIG. 35, necessary variables i, j, and etc. are initializedin operation S1701, and a noise threshold for the AWGN channel TH1[i]and a noise threshold for the Rayleigh channel TH2[i] are calculated inoperation S1702. Then, a final determination noise threshold TH[i]defined in step 4) is calculated in operation S1703, and is comparedwith a previously calculated final determination noise threshold TH[i−1]in operation S1704. When the final determination noise threshold TH[i]is smaller than the previously calculated final determination noisethreshold TH[i−1], TH_S[i] is replaced with the TH[i] and is sorted inoperation S1706. Next, i, j values increase by 1 in operation S1707 andthis process is repeated until the i value exceeds A which ispre-defined in operation S1708. In this case, A is the total number ofinterleaver patterns to be tested in steps 2), 3), 4), and 5) and A istypically determined to be greater than or equal to 10000. When alloperations described above are completed, interleaver patternscorresponding to TH_S[0], TH_S[1], . . . , TH_S[B−1] which are stored ina descending order of final noise thresholds values in operation S1709.

Hereinbelow, the group interleaver design will be described in greaterdetail.

Meanwhile, as described above, in that each of bit groups constitutingthe LDPC codeword correspond to each column group of the parity checkmatrix, a degree of each column group has an effect on decodingperformance of the LDPC codeword.

For example, that a degree of column groups is relatively high indicatesthat there are relatively larger number of parity check equations whichare related to bit groups corresponding to column groups, the bit groupswhich correspond to column groups having a relatively high degree withina parity check matrix formed of a plurality of column groups may have agreater effect on decoding performance of the LDPC codeword rather thanbit groups which correspond to column groups having a relatively lowdegree. In other words, if column groups having a relatively high degreeare not mapped appropriately, the performance of the LDPC codeword willbe substantially degraded.

Therefore, the group interleaver may be designed such that a bitgroup(s) having the highest degree, from among the bit groupsconstituting the LDPC codeword, is interleaved according to the π(j) andmapped to a specific bit of the modulation symbol (or transmissionsymbol), and the other bit groups not having the highest degree israndomly mapped to the modulation symbol. Under this condition, byobserving actual BER/FER performance, the case where the performance ofthe LDPC codeword is substantially degraded may be avoided.

Hereinbelow, a case where the encoder 110 performs LDPC encoding byusing the code rate 6/15 to generate an LDPC codeword having the lengthof 64800, and constitutes a modulation symbol by using the non-uniform64-QAM (or 64-NUC) will be described in a greater detail.

In this case, the encoder 110 may perform LDPC encoding based on theparity check matrix comprising the information word submatrix defined byTable 4 and the parity submatrix having a dual diagonal configuration.

Accordingly, the parity check matrix is formed of 180 column groups, andfrom among the 180 column groups, 13 column groups have the degree of27, 38 column groups have the degree of 4, 21 column groups have thedegree of 3, and 108 column groups have the degree of 2.

Therefore, with respect to only 13 column groups of which the degree is27, from among the 180 column groups, several π(j) for the 13 columngroups may be generated to satisfy a predetermined condition in thegroup interleaver design, and π(j) for the other column groups may beremained as a blank. The bit groups which correspond to the remainingcolumn groups may be set to be mapped randomly onto bits constituting amodulation symbol. Then, π(j) for 13 column groups having the mostexcellent performance is selected by observing actual BER/FERperformance regarding a specific SNR value. By fixing a part of π(j),i.e. π(j) for 13 column groups selected as described above, substantialdegradation of the performance of the LDPC codeword may be avoided.

TABLE 31 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 9 1 block of 5 group-wise 7 3 intedeaver 2 input 0 4 1112 8 6 10

Meanwhile, Table 31 may be presented as below Table 31-1.

TABLE 31-1 Order of bits group to be block interleaved π(j) (0 ≤ j <180) j-th block 11 13 45 47 54 72 107 126 137 138 143 149 169 ofgroupwise interleaver output π(j)-th 9 1 5 7 3 2 0 4 11 12 8 6 10 blockof group-wise interleaver input

In case of Table 31, Equation 21 may be expressed as Y₁₁=X_(π(11))=X₉,Y₁₃=X_(π(13))=X₁, Y₄₅=X_(π(45))=X₅, . . . , Y₁₄₃=X_(π(143))=X₈,Y₁₄₉=X_(π(149))=X₆, Y₁₆₉=X_(π(169))=X₁₀.

That is, the group interleaver 122 may rearrange the order of theplurality of bit groups by changing the 9^(th) bit group to the 11^(th)bit group, the 1^(st) bit group to the 13^(th) bit group, the 5^(th) bitgroup to the 45^(th) bit group, . . . , the 8^(th) bit group to the143^(rd) bit group, the 6^(th) bit group to the 149^(th) bit group, andthe 10^(th) bit group to the 169^(th) bit group, and by rearrangingrandomly the other bit groups.

In a case where some bit groups are already fixed, the aforementionedfeature is applied in the same manner. In other words, bit groups whichcorrespond to column groups having a relatively high degree from amongthe other bit groups which are not fixed may have a greater effect ondecoding performance of the LDPC codeword than bit groups whichcorrespond to column groups having a relatively low degree. That is,even in the case where degradation of the performance of the LDPCcodeword is prevented by fixing the bit groups having the highestdegree, the performance of the LDPC codeword may vary according to amethod of mapping the other bit groups. Accordingly, a method of mappingbit groups having the next highest degree needs to be selectedappropriately, to avoid the case where the performance is relativelypoor.

Therefore, in a case where bit groups having the highest degree arealready fixed, bit groups having the next highest degree, from among thebit groups constituting the LDPC codeword, may be interleaved accordingto the π(j) and mapped to a specific bit of a modulation symbol, and theother bit groups may be randomly mapped. Under this condition, byobserving actual BER/FER performance, the case where the performance ofthe LDPC codeword is substantially degraded may be avoided.

Hereinbelow, a case where the encoder 110 performs LDPC encoding byusing the code rate 6/15 to generate an LDPC codeword having the lengthof 64800, and constitutes a modulation symbol by using the non-uniform64-QAM (or 64-NUC) will be described in a greater detail.

In this case, the encoder 110 may perform LDPC encoding based on theparity check matrix comprising the information word submatrix defined byTable 4 and the parity submatrix having a dual diagonal configuration.

Accordingly, the parity check matrix is formed of 180 column groups, andfrom among the 180 column groups, 13 column groups have the degree of27, 38 column groups have the degree of 4, 21 column groups have thedegree of 3, and 108 column groups have the degree of 2.

Therefore, in a case where 13 column groups of which the degree is 27are already fixed as in Table 31, with respect to only 38 column groupsof which the degree is 4, from among the other 167 column groups,several π(j) for the 38 column groups may be generated to satisfy apredetermined condition in a group interleaver design, and π(j) for theother column groups may be remained as a blank. The bit groups whichcorrespond to the other column groups may be set to be mapped randomlyonto bits constituting a modulation symbol. Then, π(j) for 38 columngroups having the most excellent performance is selected by observingactual BER/FER performance regarding a specific SNR value. By fixing apart of π(j), i.e. π(j) for 38 column groups selected as describedabove, substantial degradation of the performance of the LDPC codewordmay be avoided.

TABLE 32 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 9 1 block of 5 group-wise 7 3 interleaver 2 input 0 4 1112 8 6 10

TABLE 33 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 29 17 38 37 27 43 31 35 16 46 44 9 23 1 34 45 14 18 1922 40 50 block of 24 49 26 42 47 41 21 5 group-wise 7 13 3 36 25 39 32intedeaver 48 2 20 15 28 30 input 0 4 11 12 8 6 33 10

Meanwhile, Table 33 may be presented as below Table 33-1

TABLE 33-1 Order of bits group to be block interleaved π(j) (0 ≤ j <180) j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 19 20 21 2223 of 25 26 27 29 43 44 45 47 48 54 60 61 63 64 70 72 75 82 84 88 107126 137 groupwise 138 143 149 162 169 interleaver output π(j)-th 29 1738 37 27 43 31 35 16 46 44 9 23 1 34 45 14 18 19 22 40 50 24 block of 4926 42 47 41 21 5 7 13 3 36 25 39 32 48 2 20 15 28 30 0 4 11 group-wise12 8 6 33 10 interleaver input

In case of Table 33, Equation 21 may be expressed as Y₀=X_(π(0))=X₂₉,Y₁=X_(π(1))=X₁₇, Y₂=X_(π(2))=X₃₈, . . . , Y₁₄₉=X_(π(149))=X₆,Y₁₆₂=X_(π(162))=X₃₃, Y₁₆₉×X_(π(169))=X₁₀.

That is, the group interleaver 122 may rearrange the order of theplurality of bit groups by changing the 29^(th) bit group to the 0^(th)bit group, the 17^(th) bit group to the 1^(st) bit group, the 38^(th)bit group to the 2^(nd) bit group, . . . , the 6^(th) bit group to the149^(th) bit group, the 33^(rd) bit group to the 162^(nd) bit group, andthe 10^(th) bit group to the 169^(th) bit group, and by rearrangingrandomly the other bit groups.

In a case where some bit groups among the plurality of bit groupsconstituting the LDPC codeword are already fixed, a bit group(s) havingthe highest degree among the other bit groups, may be interleavedaccording to the π(j) and mapped to a specific bit of a modulationsymbol, and the other bit groups may be randomly mapped. Under thiscondition, by observing actual BER/FER performance, the case where theperformance of the LDPC codeword is substantially degraded may beavoided.

Hereinbelow, a case where the encoder 110 performs LDPC encoding byusing the code rate 6/15 to generate an LDPC codeword having the lengthof 64800, and constitutes a modulation symbol by using the non-uniform64-QAM (or 64-NUC) will be described in a greater detail.

In this case, the encoder 110 may perform LDPC encoding based on theparity check matrix comprising the information word submatrix defined byTable 4 and the parity submatrix having a dual diagonal configuration.

Accordingly, the parity check matrix is formed of 180 column groups, andfrom among the 180 column groups, 13 column groups have the degree of27, 38 column groups have the degree of 4, 21 column groups have thedegree of 3, and 108 column groups have the degree of 2.

Therefore, in a case where 13 column groups of which the degree is 27and 38 column groups of which the degree is 4 are already fixed as inTable 33, with respect to only 21 column groups of which the degree is3, from among the other 129 column groups, several π(j) for the 21column groups may be generated to satisfy a predetermined condition inthe first step of a group interleaver design, and π(j) for the othercolumn groups may be remain as a blank. Bit groups which correspond tothe other column groups may be set to be mapped randomly onto bitsconstituting the modulation symbol. Then, π(j) for 21 column groupshaving the most excellent performance is selected by observing actualBER/FER performance regarding a specific SNR value. By fixing a part ofπ(j), i.e. π(j) for 21 column groups selected as described above,substantial degradation of the performance of the LDPC codeword may beavoided.

TABLE 34 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 29 17 38 37 27 43 31 35 16 46 44 9 23 1 34 45 14 18 1922 40 50 block of 24 49 26 42 47 41 21 5 group-wise 7 13 3 36 25 39 32interleaver 48 2 20 15 28 30 input 0 4 11 12 8 6 33 10

TABLE 35 Order of bits group to be block interleaved π(j) (0 ≤ j < 180)j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 of23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45groupwise 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 6667 68 interleaver 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 8687 88 89 90 91 output 92 93 94 95 96 97 98 99 100 101 102 103 104 105106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177178 179 π(j)-th 29 17 38 37 27 43 31 35 16 46 44 9 23 1 34 45 14 18 1922 40 50 block of 24 56 49 26 42 69 47 59 61 66 52 64 65 67 54 68 51 7041 21 5 group-wise 7 13 55 62 53 63 58 3 71 57 60 36 25 39 32interleaver 48 2 20 15 28 30 input 0 4 11 12 8 6 33 10

Meanwhile, Table 35 may be presented as below Table 35-1.

TABLE 35-1 Order of bits group to be block interleaved π(j) (0 ≤ j <180) j-th block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 19 20 21 2223 of 24 25 26 27 28 29 30 31 32 33 34 35 36 37 39 41 42 43 44 45 47 4849 groupwise 50 51 52 53 54 56 57 59 60 61 63 64 70 72 75 82 84 88 107126 137 138 143 interleaver 149 162 169 output π(j)-th 29 17 38 37 27 4331 35 16 46 44 9 23 1 34 45 14 18 19 22 40 50 24 block of 56 49 26 42 6947 59 61 66 52 64 65 67 54 68 51 70 41 32 5 7 13 55 group-wise 62 53 6358 3 71 57 60 36 25 39 32 48 2 20 15 28 30 0 4 11 12 8 interleaver 6 3310 input

In case of Table 35, Equation 21 may be expressed as Y₀=X_(π(0))=X₂₉,Y₁=X_(π(1))=X₁₇, Y₂=X_(π(2))=X₃₈, . . . , Y₁₄₉=X_(π(149))=X₆,Y₁₆₂=X_(π(162))=X₃₃, Y₁₆₉=X_(π(169))=X₁₀.

That is, the group interleaver 122 may rearrange the order of theplurality of bit groups by changing the 29^(th) bit group to the 0^(th)bit group, the 17^(th) bit group to the 1^(st) bit group, the 38^(th)bit group to the 2^(nd) bit group, . . . , the 6^(th) bit group to the149^(th) bit group, the 33^(rd) bit group to the 162^(nd) bit group, andthe 10^(th) bit group to the 169^(th) bit group, and by rearrangingrandomly the remaining bit groups.

In the exemplary embodiments described above, the case of performingLDPC encoding based on the coding rate of 6/15 and the parity checkmatrix formed of the information word submatrix defined by Table 4 andthe parity submatrix having a dual diagonal configuration is described,but this is merely exemplary, and even in a case of performing LDPCencoding based on different code rates and different parity checkmatrix, π(j) can be determined based on the aforementioned method.

The transmitting apparatus 100 may transmit the signal mapped onto theconstellation to a receiving apparatus (for example, 1200 of FIG. 36).For example, the transmitting apparatus 100 may map the signal mappedonto the constellation onto an Orthogonal Frequency DivisionMultiplexing (OFDM) frame using OFDM, and may transmit the signal to thereceiving apparatus 1200 through an allocated channel.

FIG. 36 is a block diagram to illustrate a configuration of a receivingapparatus according to an exemplary embodiment. Referring to FIG. 36,the receiving apparatus 1200 includes a demodulator 1210, a multiplexer1220, a deinterleaver 1230 and a decoder 1240.

The demodulator 1210 receives and demodulates a signal transmitted fromthe transmitting apparatus 100. Specifically, the demodulator 1210generates a value corresponding to an LDPC codeword by demodulating thereceived signal, and outputs the value to the multiplexer 1220. In thiscase, the demodulator 1210 may use a demodulation method correspondingto a modulation method used in the transmitting apparatus 100. To do so,the transmitting apparatus 100 may transmit information regarding themodulation method to the receiving apparatus 1200, or the transmittingapparatus 100 may perform modulation using a pre-defined modulationmethod between the transmitting apparatus 100 and the receivingapparatus 1200.

The value corresponding to the LDPC codeword may be expressed as achannel value for the received signal. There are various methods fordetermining the channel value, and for example, a method for determininga Log Likelihood Ratio (LLR) value may be the method for determining thechannel value.

The LLR value is a log value for a ratio of the probability that a bittransmitted from the transmitting apparatus 100 is 0 and the probabilitythat the bit is 1. In addition, the LLR value may be a bit value whichis determined by a hard decision, or may be a representative value whichis determined according to a section to which the probability that thebit transmitted from the transmitting apparatus 100 is 0 or 1 belongs.

The multiplexer 1220 multiplexes the output value of the demodulator1210 and outputs the value to the deinterleaver 1230.

Specifically, the multiplexer 1220 is an element corresponding to ademultiplexer (not shown) provided in the transmitting apparatus 100,and performs an operation corresponding to the demultiplexer (notshown). That is, the multiplexer 1220 performs an inverse operation ofthe operation of the demultiplexer (not shown), and performs cell-to-bitconversion with respect to the output value of the demodulator 1210 andoutputs the LLR value in the unit of bit. However, when thedemultiplexer (not shown) is omitted from the transmitting apparatus100, the multiplexer 1220 may be omitted from the receiving apparatus1200.

The information regarding whether the demultiplexing operation isperformed or not may be provided by the transmitting apparatus 100, ormay be pre-defined between the transmitting apparatus 100 and thereceiving apparatus 1200.

The deinterleaver 1230 deinterleaves the output value of the multiplexer1220 and outputs the values to the decoder 1240.

Specifically, the deinterleaver 1230 is an element corresponding to theinterleaver 120 of the transmitting apparatus 100 and performs anoperation corresponding to the interleaver 120. That is, thedeinterleaver 1230 deinterleaves the LLR value by performing theinterleaving operation of the interleaver 120 inversely.

To do so, the deinterleaver 1230 may include a block deinterleaver 1231,a group twist deinterleaver 1232, a group deinterleaver 1233, and aparity deinterleaver 1234 as shown in FIG. 37.

The block deinterleaver 1231 deinterleaves the output of the multiplexer1220 and outputs the value to the group twist deinterleaver 1232.

Specifically, the block deinterleaver 1231 is an element correspondingto the block interleaver 124 provided in the transmitting apparatus 100and performs the interleaving operation of the block interleaver 124inversely.

That is, the block deinterleaver 1231 deinterleaves by writing the LLRvalue output from the multiplexer 1220 in each row in the row directionand reading each column of the plurality of rows in which the LLR valueis written in the column direction by using at least one row formed ofthe plurality of columns.

In this case, when the block interleaver 124 interleaves by dividing thecolumn into two parts, the block deinterleaver 1231 may deinterleave bydividing the row into two parts.

In addition, when the block interleaver 124 writes and reads in and fromthe bit group that does not belong to the first part in the rowdirection, the block deinterleaver 1231 may deinterleave by writing andreading values corresponding to the group that does not belong to thefirst part in the row direction.

Hereinafter, the block deinterleaver 1231 will be explained withreference to FIG. 38. However, this is merely an example and the blockdeinterleaver 1231 may be implemented in other methods.

An input LLR v_(i) (0≤i<N_(ldpc)) is written in a r_(i) row and a c_(i)column of the block deinterleaver 1231. Herein, c_(i)=(i mod N_(c)) and

${r_{i} = \left\lfloor \frac{i}{N_{c}} \right\rfloor},$

On the other hand, an output LLR q_(i)(0≤i<N_(c)×N_(r1)) is read from ac_(i) column and a r_(i) row of the first part of the blockdeinterleaver 1231. Herein,

${c_{i} = \left\lfloor \frac{i}{N_{r\; 1}} \right\rfloor},{r_{i} = {\left( {i\;{mod}\; N_{r\; 1}} \right).}}$

In addition, an output LLR q_(i)(N_(c)×N_(r1)≤i<N_(ldpc)) is read from ac_(i) column and a r_(i) row of the second part. Herein,

${c_{i} = \left\lfloor \frac{\left( {i - {N_{c} \times N_{r\; 1}}} \right)}{N_{r\; 2}} \right\rfloor},{r_{i} = {N_{r\; 1} + {\left\{ {\left( {i - {N_{c} \times N_{r\; 1}}} \right){mode}\; N_{r\; 2}} \right\}.}}}$

The group twist deinterleaver 1232 deinterleaves the output value of theblock deinterleaver 1231 and outputs the value to the groupdeinterleaver 1233.

Specifically, the group twist deinterleaver 1232 is an elementcorresponding to the group twist interleaver 123 provided in thetransmitting apparatus 100, and may perform the interleaving operationof the group twist interleaver 123 inversely.

That is, the group twist deinterleaver 1232 may rearrange the LLR valuesof the same bit group by changing the order of the LLR values existingin the same bit group. When the group twist operation is not performedin the transmitting apparatus 100, the group twist deinterleaver 1232may be omitted.

The group deinterleaver 1233 (or the group-wise deinterleaver)deinterleaves the output value of the group twist deinterleaver 1232 andoutputs the value to the parity deinterleaver 1234.

Specifically, the group deinterleaver 1233 is an element correspondingto the group interleaver 122 provided in the transmitting apparatus 100and may perform the interleaving operation of the group interleaver 122inversely.

That is, the group deinterleaver 1233 may rearrange the order of theplurality of bit groups in bit group wise. In this case, the groupdeinterleaver 1233 may rearrange the order of the plurality of bitgroups in bit group wise by applying the interleaving method of Tables11 to 22 inversely according to a length of the LDPC codeword, amodulation method and a code rate.

The parity deinterleaver 1234 performs parity deinterleaving withrespect to the output value of the group deinterleaver 1233 and outputsthe value to the decoder 1240.

Specifically, the parity deinterleaver 1234 is an element correspondingto the parity interleaver 121 provided in the transmitting apparatus 100and may perform the interleaving operation of the parity interleaver 121inversely. That is, the parity deinterleaver 1234 may deinterleave theLLR values corresponding to the parity bits from among the LLR valuesoutput from the group deinterleaver 1233. In this case, the paritydeinterleaver 1234 may deinterleave the LLR value corresponding to theparity bits inversely to the parity interleaving method of Equation 18.

However, the parity deinterleaver 1234 may be omitted depending on thedecoding method and embodiment of the decoder 1240.

Although the deinterleaver 1230 of FIG. 36 includes three (3) or four(4) elements as shown in FIG. 37, operations of the elements may beperformed by a single element. For example, when bits each of whichbelongs to each of bit groups X_(a), X_(b), X_(c), X_(d) constitute asingle modulation symbol, the deinterleaver 1230 may deinterleave thesebits to locations corresponding to their bit groups based on thereceived single modulation symbol.

For example, when the code rate is 6/15 and the modulation method is16-QAM, the group deinterleaver 1233 may perform deinterleaving based ontable 11.

In this case, bits each of which belongs to each of bit groups X₅₅, X₁₅,X₁₁₂, X₁₂₂ may constitute a single modulation symbol. Since one bit ineach of the bit groups X₅₅, X₁₅, X₁₁₂, X₁₂₂ constitutes a singlemodulation symbol, the deinterleaver 1230 may map bits onto decodinginitial values corresponding to the bit groups X₅₅, X₁₅, X₁₁₂, X₁₂₂based on the received single modulation symbol.

The decoder 1240 may perform LDPC decoding by using the output value ofthe deinterleaver 1230. To achieve this, the decoder 1240 may include anLDPC decoder (not shown) to perform the LDPC decoding.

Specifically, the decoder 1240 is an element corresponding to theencoder 110 of the transmitting apparatus 100 and may correct an errorby performing the LDPC decoding by using the LLR value output from thedeinterleaver 1230.

For example, the decoder 1240 may perform the LDPC decoding in aniterative decoding method based on a sum-product algorithm. Thesum-product algorithm is one example of a message passing algorithm, andthe message passing algorithm refers to an algorithm which exchangesmessages (e.g., LLR value) through an edge on a bipartite graph,calculates an output message from messages input to variable nodes orcheck nodes, and updates.

The decoder 1240 may use a parity check matrix when performing the LDPCdecoding. In this case, the parity check matrix used in the decoding mayhave the same configuration as that of the parity check matrix used inthe encoding of the encoder 110, and this has been described above withreference to FIGS. 20 to 22.

In addition, information on the parity check matrix and information onthe code rate, etc. which are used in the LDPC decoding may bepre-stored in the receiving apparatus 1200 or may be provided by thetransmitting apparatus 100.

FIG. 39 is a flowchart to illustrate an interleaving method of atransmitting apparatus according to an exemplary embodiment.

First, an LDPC codeword is generated by LDPC encoding based on a paritycheck matrix (S1410), and the LDPC codeword is interleaved (S1420).

Then, the interleaved LDPC codeword is mapped onto a modulation symbol(S1430). In this case, a bit included in a predetermined bit group fromamong a plurality of bit groups constituting the LDPC codeword may bemapped onto a predetermined bit in the modulation symbol.

Each of the plurality of bit groups may be formed of M number of bits,and M may be a common divisor of N_(ldpc) and K_(lpdc) and may bedetermined to satisfy Q_(ldpc)=(N_(ldpc)−K_(ldpc))/M. Herein, Q_(ldpc)is a cyclic shift parameter value regarding columns in a column group ofan information word submatrix of the parity check matrix, N_(ldpc) is alength of the LDPC codeword, and K_(ldpc) is a length of informationword bits of the LDPC codeword.

Operation S1420 may include interleaving parity bits of the LDPCcodeword, dividing the parity-interleaved LDPC codeword by the pluralityof bit groups and rearranging the order of the plurality of bit groupsin bit group wise, and interleaving the plurality of bit groups theorder of which is rearranged.

The order of the plurality of bit groups may be rearranged in bit groupwise based on the above-described Equation 21 presented above.

As described above, π(j) in Equation 21 may be determined based on atleast one of a length of the LDPC codeword, a modulation method, and acode rate.

For example, when the LDPC codeword has a length of 64800, themodulation method is 16-QAM, and the code rate is 6/15, π(j) may bedefined as in table 11.

In addition, when the LDPC codeword has a length of 64800, themodulation method is 16-QAM, and the code rate is 10/15, π(j) may bedefined as in table 14.

In addition, when the LDPC codeword has a length of 64800, themodulation method is 16-QAM, and the code rate is 12/15, π(j) may bedefined as in table 15.

In addition, when the LDPC codeword has a length of 64800, themodulation method is 64-QAM, and the code rate is 6/15, π(j) may bedefined as in table 17.

In addition, when the LDPC codeword has a length of 64800, themodulation method is 64-QAM, and the code rate is 8/15, π(j) may bedefined as in table 18.

In addition, when the LDPC codeword has a length of 64800, themodulation method is 64-QAM, and the code rate is 12/15, π(j) may bedefined as in table 21.

The interleaving the plurality of bit groups may include: writing theplurality of bit groups in each of a plurality of columns in bit groupwise in a column direction, and reading each row of the plurality ofcolumns in which the plurality of bit groups are written in bit groupwise in a row direction.

In addition, the interleaving the plurality of bit groups may include:serially write, in the plurality of columns, at least some bit groupwhich is writable in the plurality of columns in bit group wise fromamong the plurality of bit groups, and then dividing and writing theother bit groups in an area which remains after the at least some bitgroup is written in the plurality of columns in bit group wise.

FIG. 40 is a block diagram illustrating a configuration of a receivingapparatus according to an exemplary embodiment.

Referring to FIG. 40, a receiving apparatus 3800 may comprise acontroller 3810, an RF receiver 3820, a demodulator 3830 and a serviceregenerator 3840.

The controller 3810 determines an RF channel and a PLP through which aselected service is transmitted. The RF channel may be identified by acenter frequency and a bandwidth, and the PLP may be identified by itsPLP ID. A specific service may be transmitted through at least one PLPincluded in at least one RF channel, for each component constituting thespecific service. Hereinafter, for the sake of convenience ofexplanation, it is assumed that all of data needed to play back oneservice is transmitted as one PLP which is transmitted through one RFchannel. In other words, a service has only one data obtaining path toreproduce the service, and the data obtaining path is identified by anRF channel and a PLP.

The RF receiver 3820 detects an RF signal from an RF channel selected bya controller 3810 and delivers OFDM symbols, which are extracted byperforming signal processing on the RF signal, to the demodulator 3830.Herein, the signal processing may include synchronization, channelestimation, equalization, etc. Information required for the signalprocessing may be a value predetermined by the receiving apparatus 3810and a transmitter according to use and implementation thereof andincluded in a predetermined OFDM symbol among the OFDM symbols and thentransmitted to the receiving apparatus.

The demodulator 3830 performs signal processing on the OFDM symbols,extracts user packet and delivers the user packet to a servicereproducer 3740, and the service reproducer 3840 uses the user packet toreproduce and then output a service selected by a user. Here, a formatof the user packet may differ depending on a service implementationmethod and may be, for example, a TS packet or a IPv4 packet.

FIG. 41 is a block diagram illustrating a demodulator according to anexemplary embodiment.

Referring to FIG. 41, a demodulator 3830 may include a frame demapper3831, a BICM decoder 3832 for L1 signaling, a controller 3833, a BICMdecoder 3834 and an output handler 3835.

The frame demapper 3831 selects a plurality of OFDM cells constitutingan FEC block which belongs to a selected PLP in a frame including OFDMsymbols, based on control information from the controller 3833, andprovides the selected OFDM cells to the BICM decoder 3834. The framedemapper 3831 also selects a plurality of OFDM cells corresponding to atleast one FEC block which includes L1 signaling, and delivers theselected OFDM cells to the BICM decoder 3832 for L1 signaling.

The BICM decoder for L1 signaling 3832 performs signal processing on anOFDM cell corresponding to an FEC block which includes L1 signaling,extracts L1 signaling bits and delivers the L1 signaling bits to thecontroller 3833. In this case, the signal processing may include anoperation of extracting an LLR value for decoding an LDPC codeword and aprocess of using the extracted LLR value to decode the LDPC codeword.

The controller 3833 extracts an L1 signaling table from the L1 signalingbits and uses the L1 signaling table value to control operations of theframe demapper 3831, the BICM decoder 3834 and the output handler 3835.FIG. 41 illustrates that the BICM decoder 3832 for L1 signaling does notuse control information of the controller 3833. However, when the L1signaling has a layer structure similar to the layer structure of theabove described L1 pre signaling and L1 post signaling, it is obviousthat the BICM decoder 3832 for L1 signaling may be constituted by atleast one BICM decoding block, and operation of this BICM decoding blockand the frame demapper 3831 may be controlled by L1 signalinginformation of an upper layer.

The BICM decoder 3834 performs signal processing on the OFDM cellsconstituting FEC blocks which belong to a selected PLP to extract BBF(Baseband frame)s and delivers the BBFs to the output handler 3835. Inthis case, the signal processing may include an operation of extractingan LLR value for decoding an LDPC codeword and an operation of using theextracted LLR value to decode the LDPC codeword, which may be performedbased on control information output from the controller 3833.

The output handler 3835 performs signal processing on a BBF, extracts auser packet and delivers the extracted user packet to a servicereproducer 3840. In this case, the signal processing may be performedbased on control information output from the controller 3833.

According to an exemplary embodiment, the output handler 3835 comprisesa BBF handler (not shown) which extracts BBP (Baseband packet) from theBBF.

FIG. 42 is a flowchart provided to illustrate an operation of areceiving apparatus from a moment when a user selects a service untilthe selected service is reproduced, according to an exemplaryembodiment.

It is assumed that service information on all services selectable by auser are acquired at an initial scan (S4010) prior to the user's serviceselection (S4020). Service information may include information on a RFchannel and a PLP which transmits data required to reproduce a specificservice in a current receiving apparatus. As an example of the serviceinformation, program specific information/service information (PSI/SI)in an MPEG2-TS is available, and normally can be achieved through L2signaling and an upper-layer signaling.

In the initial scan (S4010), comprehensive information on a payload typeof PLPs which are transmitted to a specific frequency band. As anexample, there may be information on whether every PLP transmitted tothe frequency band includes a specific type of data.

When the user selects a service (S4020), the receiving apparatustransforms the selected service to a transmitting frequency and performsRF signaling detection (S4030). In the frequency transforming operation(S4020), the service information may be used.

When an RF signal is detected, the receiving apparatus performs an L1signaling extracting operation from the detected RF signal (S4050).Then, the receiving apparatus selects a PLP transmitting the selectedservice, based on the extracted L1 signaling, (S4060) and extracts a BBFfrom the selected PLP (S4070). In S4060, the service information may beused.

The operation to extract a BBF (S4070) may include an operation ofdemapping the transmitted frame and selecting OFDM cells included in aPLP, an operation of extracting an LLR value for LDPC coding/decodingfrom an OFDM cell, and an operation of decoding the LDPC codeword usingthe extracted LLR value.

The receiving apparatus, using header information of an extracted BBF,extracts a BBP from the BBF (S4080). The receiving apparatus also usesheader information of an extracted BBP to extract a user packet from theextracted BBP (S4090). The extracted user packet is used to reproducethe selected service (S4100). In the BBP extraction operation (S4080)and user packet extraction operation (S4090), L1 signaling informationextracted in the L1 signaling extraction operation may be used.

According to an exemplary embodiment, the L1 signaling informationincludes information on types of a user packet transmitted through acorresponding PLP, and information on an operation used to encapsulatethe user packet in a BBF. The foregoing information may be used in theuser packet extraction operation (S1480). Specifically, this informationmay be used in an operation of extracting the user packet which is areverse operation of encapsulation of the user packet in the BBF. Inthis case, process for extracting user packet from the BBP (restoringnull TS packet and inserting TS sync byte) is same as above description.

A non-transitory computer readable medium, which stores a program forperforming the interleaving methods according to various exemplaryembodiments in sequence, may be provided.

The non-transitory computer readable medium refers to a medium thatstores data semi-permanently rather than storing data for a very shorttime, such as a register, a cache, and a memory, and is readable by anapparatus. Specifically, the above-described various applications orprograms may be stored in a non-transitory computer readable medium suchas a compact disc (CD), a digital versatile disk (DVD), a hard disk, aBlu-ray disk, a universal serial bus (USB), a memory card, and a readonly memory (ROM), and may be provided.

At least one of the components, elements or units represented by a blockas illustrated in FIGS. 18, 23, 33, 36 and 37 may be embodied as variousnumbers of hardware, software and/or firmware structures that executerespective functions described above, according to an exemplaryembodiment. For example, at least one of these components, elements orunits may use a direct circuit structure, such as a memory, processing,logic, a look-up table, etc. that may execute the respective functionsthrough controls of one or more microprocessors or other controlapparatuses. Also, at least one of these components, elements or unitsmay be specifically embodied by a module, a program, or a part of code,which contains one or more executable instructions for performingspecified logic functions. Also, at least one of these components,elements or units may further include a processor such as a centralprocessing unit (CPU) that performs the respective functions, amicroprocessor, or the like. Further, although a bus is not illustratedin the above block diagrams, communication between the components,elements or units may be performed through the bus. Functional aspectsof the above exemplary embodiments may be implemented in algorithms thatexecute on one or more processors. Furthermore, the components, elementsor units represented by a block or processing steps may employ anynumber of related art techniques for electronics configuration, signalprocessing and/or control, data processing and the like.

The foregoing exemplary embodiments and advantages are merely exemplaryand are not to be construed as limiting the present inventive concept.The exemplary embodiments can be readily applied to other types ofapparatuses. Also, the description of the exemplary embodiments isintended to be illustrative, and not to limit the scope of the inventiveconcept, and many alternatives, modifications, and variations will beapparent to those skilled in the art.

What is claimed is:
 1. A transmitting apparatus comprising: an encoderconfigured to encode input bits to generate parity bits based on a lowdensity parity check (LDPC) code, a code rate of the LDPC code being6/15 and a code length of the LDPC code being 64800 bits; an interleaverconfigured to interleave the parity bits, split a codeword comprisingthe input bits and the interleaved parity bits into a plurality of bitgroups, and interleave the plurality of bit groups based on aninterleaving order; a mapper configured to demultiplex bits of theinterleaved plurality of bit groups to generate cells and map the cellsto constellation points for 64-quadrature amplitude modulation (QAM);and a transmitter configured to transmit a signal which is generatedbased on the constellation points, wherein the plurality of bit groupsare interleaved based on a following equation:Y _(j) =X _(π(j)) for (0≤j<N _(group)), where X_(j) is a j^(th) bitgroup among the plurality of bit groups, Y_(j) is a j^(th) bit groupamong the interleaved plurality of bit groups, N_(group) is a number ofthe plurality of bit groups, and π(j) denotes the interleaving order,and wherein the π(j) is represented as follows: Order of theinterleaving π(j) (0 ≤ j < 180) j 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 3940 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 6364 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 8788 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 π(j)29 17 38 37 27 43 31 35 16 46 44 9 23 1 34 45 14 18 156 19 22 40 50 2456 49 26 42 69 47 59 61 66 52 64 65 67 54 170 68 132 51 70 41 21 5 160 713 55 62 53 63 58 3 167 71 57 151 60 36 25 74 39 32 72 85 86 107 113 4888 2 129 137 20 73 166 75 77 142 174 15 149 28 145 92 169 30 133 163 11982 176 152 134 139 148 164 99 173 104 83 106 112 135 153 0 128 144 98171 94 97 143 110 118 127 84 79 108 126 131 93 111 91 4 125 162 157 158109 140 123 154 150 80 11 12 146 96 81 165 8 89 138 105 141 103 6 100161 172 78 101 115 179 147 116 136 122 87 33 130 124 175 120 90 102 10114 159 76 177 178 121 168 95 117 155


2. The transmitting apparatus of claim 1, wherein each of the pluralityof bit groups comprises 360 bits.
 3. A receiving apparatus comprising: areceiver configured to receive a signal from a transmitting apparatus; ademodulator configured to demodulate the signal to generate values basedon 64-quadrature amplitude modulation (QAM); a deinterleaver configuredto split the values into a plurality of groups, deinterleave theplurality of groups and deinterleave one or more values from amongvalues of the deinterleaved plurality of groups, a decoder configured todecode values of the deinterleaved plurality of groups comprising thedeinterleaved one or more values based on a low density parity check(LDPC) code, a code rate of the LDPC code being 6/15 and a code lengthof the LDPC code being 64800 bits, wherein the plurality of groups aredeinterleaved based on a following equation:Y _(π(j)) =X _(j) for (0≤j<N _(group)) where X_(j) is a jth group amongthe plurality of groups, Y_(j) is a jth group among the deinterleavedplurality of groups, N_(group) is a number of the plurality of groups,and π(j) denotes a deinterleaving order for the deinterleaving, andwherein the π(j) is represented as follows: Order of the interleavingπ(j) (0 ≤ j < 180) j 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1920 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 4344 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 6768 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 9192 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165166 167 168 169 170 171 172 173 174 175 176 177 178 179 π(j) 29 17 38 3727 43 31 35 16 46 44 9 23 1 34 45 14 18 156 19 22 40 50 24 56 49 26 4269 47 59 61 66 52 64 65 67 54 170 68 132 51 70 41 21 5 160 7 13 55 62 5363 58 3 167 71 57 151 60 36 25 74 39 32 72 85 86 107 113 48 88 2 129 13720 73 166 75 77 142 174 15 149 28 145 92 169 30 133 163 119 82 176 152134 139 148 164 99 173 104 83 106 112 135 153 0 128 144 98 171 94 97 143110 118 127 84 79 108 126 131 93 111 91 4 125 162 157 158 109 140 123154 150 80 11 12 146 96 81 165 8 89 138 105 141 103 6 100 161 172 78 101115 179 147 116 136 122 87 33 130 124 175 120 90 102 10 114 159 76 177178 121 168 95 117 155


4. The receiving apparatus of claim 3, wherein each of the plurality ofgroups comprises 360 values.